5

我正在尝试将我的应用中的内容分享到 Google Plus。为此,我使用了以下代码:

-(IBAction)handleGPlus{

    id<GPPShareBuilder> shareBuilder = [[GPPShare sharedInstance] shareDialog];

    [shareBuilder setURLToShare:[NSURL URLWithString:@"http://dummy.com"]];
    [shareBuilder setTitle:@"Some title" description:@"Some description" thumbnailURL:[NSURL URLWithString:@"http://dummy.com/image"]];
    [shareBuilder setContentDeepLinkID:kClientId];
    [shareBuilder open];
}

我已经像这样设置了clientID:

static NSString * const kClientId = @"MY_CLIENT_ID";

但我收到以下错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'You must specify |clientID| for |GPPSignIn|'
*** First throw call stack:
(0x346932a3 0x3c33897f 0x346931c5 0x1d2e33 0x122725 0x365860c5 0x36586077 0x36586055 0x3658590b  0x36585e01 0x364ae5f1 0x3649b801 0x3649b11b 0x3819e5a3 0x3819e1d3 0x34668173 0x34668117 0x34666f99 0x345d9ebd 0x345d9d49 0x3819d2eb 0x364ef301 0xee20d 0xed600)
libc++abi.dylib: terminate called throwing an exception

我也包含了GoogleOpenSource.FrameworkGooglePlus.Framework文件。

知道我做错了什么吗?

4

1 回答 1

12

因为您没有分配 GPPSignIn 类的 client_ id。在您的 appdelegate 中尝试此代码

    [GPPSignIn sharedInstance].clientID = @"MY_CLIENT_ID";
    [GPPDeepLink setDelegate:self];
    [GPPDeepLink readDeepLinkAfterInstall];

然后尝试共享链接以正确的方式实现它。

我希望它对你有帮助。

于 2013-05-30T10:29:00.507 回答