我正在使用 ShareKit 在 Facebook 上分享一个简单的文本。我使用 cocoapods 在我的应用程序(iOS7 和 XCode5)上安装 ShareKit,并按照配置教程 ConfigurationShareKit .
更具体地说,我做了以下事情:
1) 将 URL Scheme 写入 plist。
2) 创建一个 DefaultSHKConfigurator 子类:
<上一页>
@interface MySHKConfigurator : DefaultSHKConfigurator
@结尾
@implementation MySHKConfigurator
- (NSString*)facebookAppId
{
返回@“xxx”;
}
-(NSString *)appName
{
返回@“我的应用程序名称”;
}
- (NSArray*)facebookWritePermissions
{
返回 [NSArray arrayWithObjects"publish_actions",@"publish_stream", nil];//@"offline_access",
}
- (NSArray*)facebookReadPermissions
{
返回零;//这是 SDK 的默认值,将提供基本的读取权限
}
@结尾
3) 在 AppDelegate 中进行初始配置:
- (BOOL)applicationUIApplication *)application didFinishLaunchingWithOptionsNSDictionary *)launchOptions
{
//应用程序启动后自定义的覆盖点。
DefaultSHKConfigurator *configurator = [[MySHKConfigurator alloc] init];
[SHKConfiguration sharedInstanceWithConfigurator:configurator];
//[SHK flushOfflineQueue];
返回是;
}
- (void)applicationDidBecomeActiveUIApplication *)application
{
//重新启动任何在应用程序处于非事件状态时暂停(或尚未启动)的任务。如果应用程序之前在后台,可选择刷新用户界面。
[SHKFacebook handleDidBecomeActive];
}
- (void)applicationWillTerminateUIApplication *)application
{
//当应用程序即将终止时调用。如果合适,保存数据。另请参阅 applicationDidEnterBackground:。
//如果合适,保存数据
[SHKFacebook 处理WillTerminate];
}
- (BOOL)应用程序UIApplication *)应用程序
openURLNSURL *)url
sourceApplicationNSString *)sourceApplication
注释id)注释
{
NSString* 方案 = [url 方案];
if ([scheme hasPrefix:[NSString stringWithFormat"fb%@", SHKCONFIG(facebookAppId)]]) {
return [SHKFacebook handleOpenURL:url];
}
返回是;
}
4) 在 Facebook 上分享
- (IBAction)shareFacebookid)sender {
//- url 应该是指向您在应用商店中的应用的链接
NSURL *url = [NSURL URLWithString"http://www.google.com"];
//- 在 Facebook 上分享
SHKItem *item = [SHKItem URL:url 标题:self.textView.text contentType:SHKURLContentTypeWebpage];
[SHKFacebook shareItem:item];
}
现在,我在真实设备上得到的结果是一个带有问题的 facebook 确认对话框:“您已经授权了 MyApp”。按 OK 按钮后,它会返回共享对话框。在我按下“发送到 Facebook”后,它再次返回到 Facebook 确认对话框,并带有上述问题。这个循环永远循环。
你知道我错过了什么吗?谢谢
Best Answer-推荐答案 strong>
哦,我现在明白了 - 如果您更喜欢直接调用共享者,而不是调用
[SHKiOSFacebook shareItem:item];
SHKFacebook和SHKiOSFacebook的区别在于前者使用Facebook iOS SDK,而后者使用Accounts.framework和Social.framework。
关于ios - ShareKit - 在 Facebook 上分享,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/24259516/
|