OStack程序员社区-中国程序员成长平台

标题: ios - ShareKit - 在 Facebook 上分享 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 08:06
标题: ios - ShareKit - 在 Facebook 上分享

我正在使用 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-推荐答案


哦,我现在明白了 - 如果您更喜欢直接调用共享者,而不是调用

[SHKiOSFacebook shareItem:item];

SHKFacebook和SHKiOSFacebook的区别在于前者使用Facebook iOS SDK,而后者使用Accounts.framework和Social.framework。

关于ios - ShareKit - 在 Facebook 上分享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24259516/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4