how not to suck at app distribution - quick start guide - appsocially's growth sdk v.0.6.0
DESCRIPTION
This is a Quick Start Guide to AppSocially's Growth SDK v.0.6.0. AppSocially makes viral loops.TRANSCRIPT
AppSociallyQUICK START GUIDE (v.0.6.0)
CONTENTS [email protected]
Contents๏ What is AppSocially?๏ How it works๏ Run the Sample App๏ How to Implement in Your App
1.Add SDK to Your Project2. Implement Referral Mechanism
๏ What’s Next?๏ Reference
[email protected] WHAT IS APPSOCIALLY?
What is AppSocially?
[email protected] PROBLEM
WE SOLVE THEBIGGEST PROBLEM APP DEVELOPERSHAVE TODAY:WE HELP THEMGET MORE CUSTOMERS
0%
18%
35%
53%
70%
Search App Store Family or Friends Media TV Ad In-App Ad
9%6%
9%
52%
63%
13%13%17%
61%63%
HOW DO USERS DISCOVER APPS?
Source: Nielsen, Q3 2011
iOS AppStore Android Market
AppSocially
PLOBLEM [email protected] Angel.co/appsocially
PLATFORM FOR MOBILEORGANIC GROWTH
SDK ACTIONABLEANALYTICS
[email protected] SDK ::: “ShareThis for mobile”
Share TrackableUIActivity
Share like Instagram/
PathAggregated Friend Picker Custom View
[email protected] ACTIONABLE ANALYTICS ::: “Optimizely for mobile”
SOLUTION [email protected]
Having AppSocially is like having mobile-focused ”user growth team as a platform.”
What “Growth Team” does Implement
Referral MechanismTrack
Referral MetricsOptimize
Referral Landing Pages
What others do for mobile user
growth.It takes 3 month w/ 10 people,
requires tons of knowledge, skills and experience.
What you do w/ AppSocially. ✓Quick install
✓Measure predefined metrics
✓Test different designs
+ +
[email protected] IT WORKS
✓Keep Track of Viral Metrics
[email protected] RUN THE SAMPLE APP
Run the Sample App
RUN THE SAMPLE APP [email protected]
0. Signup and create an app
๏ Signup for an AppSocially account•http://appsocial.ly
๏ Create new app
RUN THE SAMPLE APP [email protected]
1. Download SDK from the AppSocially DashboardSample projects are included in the ZIP file.
Prepare this API Key.
RUN THE SAMPLE APP [email protected]
2. Create a new app on the Facebook App Dashboard
RUN THE SAMPLE APP [email protected]
3. Replace the AppSocially API Key and Facebook APP ID
[Growth setAPIKey:@"YOUR_APPSOCIALLY_API_KEY"];[Growth setFacebookAppID:@"YOUR_FACEBOOK_APP_ID"];
(AppDelegate.m)
#import <Growth/Growth.h>
RUN THE SAMPLE APP [email protected]
4. Build & Run!
[email protected] HOW TO IMPLEMENT IN YOUR APP
How to Implement in Your App
[email protected] HOW TO IMPLEMENT IN YOUR APP
1. Add SDK to Your Project
HOW TO IMPLEMENT IN YOUR APP [email protected]
1. Drag the “GrowthSDK” folderinto your project
HOW TO IMPLEMENT IN YOUR APP [email protected]
2. Setup your project
๏ Add required frameworks- Accounts.framework- AddressBook.framework- AddressBookUI.framework- CFNetwork.framework- MessageUI.framework- MobileCoreServices.framework- QuartzCore.framework- Security.framework- Social.framework- SystemConfiguration.framework- libresolv.dylib- libxml2.dylib- libiconv.dylib
๏ Update Build Configurations- Set "Other Linker Flags" configiration to "-ObjC -all_load".
HOW TO IMPLEMENT IN YOUR APP [email protected]
3. Start Coding!
[Growth setAPIKey:@"YOUR_APPSOCIALLY_API_KEY"];[Growth setFacebookAppID:@"YOUR_FACEBOOK_APP_ID"];
(AppDelegate.m)
#import <Growth/Growth.h>
[email protected] HOW TO IMPLEMENT IN YOUR APP
2. Implement Referral Mechanism
[email protected] HOW TO IMPLEMENT IN YOUR APP
Share TrackableUIActivity
Share like Instagram/
PathAggregated Friend Picker Custom View
* See “Implement Referral Mechanism” chapter to learn how to implement each patterns.
HOW TO IMPLEMENT IN YOUR APP [email protected]
Action Sheet Type
Just 1 line.
[Growth showInviteSheetInView:self.view];
Sample Project: FirstSample
HOW TO IMPLEMENT IN YOUR APP [email protected]
Aggregated Friend Picker(Invite like Path)
Sample Project: InviteSample
Implement the delegate methods.
Same as usual UIViewController subclasses.GRFriendPickerViewController *pickerCtr = [[GRFriendPickerViewController alloc] init];pickerCtr.delegate = self;
// customize here
[self presentViewController:pickerCtr animated:YES completion:nil];
Call inviteFriends method.[GRInviter inviteFriends:self.pickedFriends inviteInfo:inviteInfo withMessage:NO completion:nil];
- (void)friendPickerViewController:(GRFriendPickerViewController *)controller didPickedFriends:(NSArray *)friends{ self.pickedFriends = friends; [controller dismissViewControllerAnimated:YES completion:^{ // do something after friends being picked }];}
HOW TO IMPLEMENT IN YOUR APP [email protected]
Share
Sample Project: ShareSample
Call each Sharers.
[GRFacebookSharer shareWithItems:shareItems completion:nil];
[GRTwitterSharer shareWithItems:shareItems completion:nil];
HOW TO IMPLEMENT IN YOUR APP [email protected]
Trackable UIActivity
Sample Project: ShareSample
Same as default UIActivities.
GRTrackableTwitterActivity *twitter = [[GRTrackableTwitterActivity alloc] init];GRTrackableFacebookActivity *facebook = [[GRTrackableFacebookActivity alloc] init];GRTrackableMailActivity *mail = [[GRTrackableMailActivity alloc] init];GRTrackableSMSActivity *sms = [[GRTrackableSMSActivity alloc] init];
NSArray *activities = @[twitter, facebook, mail, sms]; UIActivityViewController *activityCtr;activityCtr = [[UIActivityViewController alloc] initWithActivityItems:items applicationActivities:activities];
HOW TO IMPLEMENT IN YOUR APP [email protected]
Share like Instagram
Sample Project: ShareSample
Same as usual UIViewController subclasses.GRShareComposeViewController *shareCtr;shareCtr = [[GRShareComposeViewController alloc] init];[self presentViewController:shareCtr animated:YES completion:nil];
HOW TO IMPLEMENT IN YOUR APP [email protected]
Custom View Type
Sample Project: Customized View Sample
- (void)tableView:(UITableView *)tableViewdidSelectRowAtIndexPath:(NSIndexPath *)indexPath{ switch (indexPath.row) { case 0: default: // title break; case 1: // Twitter [GRTwitterDMInviter invite:nil completionHandler:nil]; break; case 2: // Facebook [GRFacebookMessageInviter invite:nil completionHandler:nil]; break; case 3: // Mail [GRMailInviter invite:nil completionHandler:nil]; break; case 4: // SMS [GRSMSInviter invite:nil completionHandler:nil]; break; }}
Call each inviters.
WHAT’S NEXT [email protected]
What’s next?๏ Keep track of your customer’s referral metrics on the Dashboard
๏ Edit and personalize your landing pages (= template) on the Dashboard
๏ Available soon:•A/B test different designs of landing pages•Send push notification to your existing customers to accelerate referrals•Customize domain <iloveapp.co/XXXX> -> <yoursomain.com/XXXX>
REFERENCE [email protected]
Reference๏ AppSocially•http://appsocial.ly