webentwicklung-frage-antwort-db.com.de

SLServiceTypeFacebook setInitialText funktioniert nicht

Ich versuche, einen Text auf Facebook mit SLServiceTypeFacebook unter IOS zu teilen. 8.3. Das Popup-Textfeld wurde jedoch leer angezeigt. Ich möchte, dass es mit Text darin angezeigt wird. Unten sehen Sie den Code, den ich dafür verwende.

 if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) 
 {
       SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

       [controller setInitialText:@"First post from my iPhone app"];
       [self presentViewController:controller animated:YES completion:Nil];
  }
46
birdcage

Es scheint ein Problem zu sein, nachdem das neueste Update der Facebook-App (V29) installiert wurde. Durch das Entfernen wird das Problem "behoben".

https://developers.facebook.com/bugs/1632385646995079/https://developers.facebook.com/bugs/962985360399542/

Update (3. Juni 2015)

Gut. Es scheint, dass die neue Facebook-Richtlinie besagt, dass das Einfügen einer Nachricht durch setInitialText: eine Vorabverletzung ist.

https://developers.facebook.com/docs/apps/review/prefill

Ich denke, der einzige Weg, Inhalte ab sofort zu teilen, ist die FBSDKShareDialog

https://developers.facebook.com/docs/sharing/ios

32
nnarayann

Ich muss die Effizienz von Facebook lieben. Bin etwas spät dran, kann aber jemandem helfen.

#import <FBSDKShareKit/FBSDKShareKit.h>

FBSDKShareLinkContent  *content = [[FBSDKShareLinkContent alloc] init];
content.contentURL = self.urlForSocialMedia;
content.contentDescription = self.textForFB;
content.contentTitle = @"Results.";

[FBSDKShareDialog showFromViewController:self
                             withContent:content
                                delegate:self];
1
PhillipOReilly

Vor setInitialText muss # vor diesem Test hinzugefügt werden. Code unten. Es arbeitet für mich 

SLComposeViewController *mySLComposerSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

    [mySLComposerSheet setInitialText:@"#myInitialTextIsHere"];
    [mySLComposerSheet addURL:[NSURL URLWithString:strURL]];

    [mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {

        switch (result) {
            case SLComposeViewControllerResultCancelled:
                NSLog(@"Post Canceled");
                break;
            case SLComposeViewControllerResultDone:
                NSLog(@"Post Sucessful");
                break;

            default:
                break;
        }
    }];

    [self presentViewController:mySLComposerSheet animated:YES completion:nil];
0
Parveen Akter