我會爲任何建議如何處理我有張貼到Facebook的圖像的問題,感謝麻煩張貼照片。Facebook的IOS SDK - 使用UIImage的
下面的代碼工作,正如我所期望的:
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"http://myserver/img.png", @"picture",
@"My Testing", @"name",
@"Enter some text...", @"message",
nil];
[appDelegate.facebook dialog:@"feed" andParams:params andDelegate:self];
不過,我真的想用,我從我的相機拍攝的圖像。我已經在應用程序的早期設置了代碼,並將圖像放在屏幕上。於是,我試着這樣做:
CGRect contextRect = CGRectMake(0, 0, 320, 436);
UIGraphicsBeginImageContextWithOptions(contextRect.size, YES, 1);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
我測試過此代碼,並newImage是一個有效的UIImage,我可以放置和操作,就像我期望。然而,當我嘗試將其集成到Facebook的對話如下:
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
newImage, @"picture",
@"My Testing", @"name",
@"Enter some text...", @"message",
nil];
[appDelegate.facebook dialog:@"feed" andParams:params andDelegate:self];
我在控制檯中這兩個荒謬的消息: - [UIImage的長度]:無法識別的選擇發送到實例0x1c9420 CoreAnimation:忽略異常: - [UIImage length]:無法識別的選擇器發送到實例0x1c9420
因此,作爲測試,我想我會嘗試將圖像導入到我的項目並直接訪問它。這是我在第一個例子中在線引用的確切圖像,所以我知道它應該起作用。但即使當我嘗試這樣:
UIImage *newImage = [UIImage imageNamed:@"BaB.png"];
我得到了與上面相同的錯誤消息。
我看到「圖片」應該使用URL的圖像Facebook的文檔。但我在網上看到一些例子,表明人們使用的是UIImage而不僅僅是一個URL。
很顯然,我做錯了什麼,但我不知道它可能是什麼。
我會爲任何指針,以如何進行非常感謝。
這真是太棒了 - 感謝您的幫助 –
在Facebook.m中,在第166行或第166行左右,SDK將access_token添加到傳入的參數中,使得開發人員將訪問令牌傳入時成爲冗餘,無論是param還是URL的一部分。 – mahboudz