本指南将指导您将Shine添加到您的iOS应用中。
要开始使用Shine,您需要获取唯一的应用程序密钥。目前,这些应用程序密钥由Soundwave以非正式方式发放。如果您尚未收到密钥或想咨询获取密钥的事宜,请联系Soundwave。
查看上面的Shine示例应用以帮助您入门。
Shine SDK要求iOS 7.1以上。
Shine SDK也可以手动安装。
添加其他链接器标志
要使用Shine,请按照以下步骤操作
AppDelegate
类中#import <Shine/Shine.h>
willFinishLaunchingWithOptions
方法中。在此阶段,您需要提供唯一的应用程序密钥,这可以通过联系Soundwave获得。- (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[Shine setDeveloperKey:@"<Your-Dev-Key>"];
return YES;
}
添加此代码后,Shine将在您的应用启动时开始捕捉数据。
通过将以下代码添加到您的应用中,您可以捕捉用户注册数据
...
//Create a new Shine user
SWUser *shineUser = SWUser.new;
shineUser.firstName = @"John";
shineUser.lastName = @"Smith";
shineUser.email = @"[email protected]";
//Register the user with Shine
[Shine registerUserDetails:shineUser];
...
以下Shine集成点在使用Shine时不是强制性的。
如果主机应用有所需的位置服务权限,Shine可以捕捉设备的地理位置。要捕捉位置数据,您需要将以下代码添加到一个符合CLLocationDelegate协议的类中。
#import <Shine/Shine.h>
...
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations {
[Shine updateLocation:locations];
}
Shine位置追踪适用于kCLAuthorizationStatusAuthorizedAlways和 kCLAuthorizationStatusAuthorizedWhenInUse两种情况。然而,只有当主应用程序具有 kCLAuthorizationStatusAuthorizedAlways权限时,位置数据才会与歌曲播放相关联。
示例应用程序中提供了捕获位置数据的示例。
如果主应用程序拥有所需的联系人访问权限,Shine可以捕获设备上的联系人。在获得访问联系人的权限后,请调用[Shine syncContacts]
。
#import <Shine/Shine.h>
ABAddressBookRequestAccessWithCompletion(ABAddressBookCreateWithOptions(nil, nil), ^(bool granted, CFErrorRef error) {
if (granted) {
[Shine syncContacts];
}
});
示例应用程序中提供了同步联系人数据的示例。
问。我认为Shine没有捕获任何数据
答。在设置开发者密钥之前打开日志记录。Shine的日志将告诉您是否在捕获数据时存在任何问题。
- (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[Shine enableLogging];
[Shine setDeveloperKey:@"<Your-Dev-Key>"];
return YES;
}
问。我收到错误消息“未定义的符号为架构”
答。确保您已将-ObjC
添加到您的
问。我收到错误消息“Shine授权失败:请输入有效的开发者密钥”
答。请确保您有一个有效的开发者密钥并且已正确输入。请联系Soundwave以获取开发者密钥。