2013-05-30 33 views
5

Tôi đang cố gắng chia sẻ nội dung từ ứng dụng của mình với Google Plus. Để kết thúc này, tôi đã sử dụng đoạn mã sau:Tích hợp và chia sẻ iOS 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]; 
} 

Và tôi đã thiết lập các ClientId như vậy:

static NSString * const kClientId = @"MY_CLIENT_ID"; 

Nhưng tôi nhận được lỗi sau:

*** 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 

tôi đã bao gồm các tệp GoogleOpenSource.FrameworkGooglePlus.Framework.

Bất kỳ ý tưởng nào tôi đang làm sai?

+0

Vì bạn không chỉ định id ứng dụng khách của lớp GPPSignIn – chandan

Trả lời

12

Vì bạn không gán id client_ của lớp GPPSignIn. Hãy thử mã này trong appdelegate bạn

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

sau đó thử sharing link để thực hiện nó theo cách đúng đắn.

Tôi hy vọng nó sẽ giúp bạn.

+1

Cảm ơn nó đã hoạt động. :) –

+0

Chào mừng bạn nhất @Rameez – chandan

Các vấn đề liên quan