ios आईओएस 11 पर काम नहीं कर रहा है फेसबुक के साथ साझा करें




swift facebook (2)

मैं आईओएस के लिए फेसबुक एसडीके का इस्तेमाल करता हूं और आईओएस 10 पर इसके काम को ठीक करता हूं, लेकिन जब मैं अपने फोन को आईओएस 11 में बदलता हूं, तो फेसबुक शेयर अब काम नहीं कर रहा है। कृपया मदद, अग्रिम धन्यवाद


दुर्भाग्य से आईओएस 11 के साथ सामाजिक नेटवर्क सेवाओं (फेसबुक, ट्विटर, वीमियो, और फ़्लिकर) को अपडेट किया गया है, जो सिस्टमव्यापी एकीकरण के लिए सिंगल साइन-ऑन का उपयोग किया गया था।

आईओएस 10 और इससे पहले के लिए इस स्निपेट का उपयोग करने के बजाय :

let viewController = SLComposeViewController(forServiceType: SLServiceTypeFacebook)
viewController.add(imageView.image!)
viewController.add(URL(string: "http://www.example.com/"))
viewController.setInitialText("Text to post!")

self.present(viewController!, animated: true, completion: nil)

आप FBSDKGraphRequest का उपयोग करके फेसबुक पर पोस्ट कर सकते हैं

सबसे पहले फेसबुक डेवलपर कंसोल से अपना ऐप बनाएं। उसके बाद, अपना Xcode प्रोजेक्ट सेटअप करें (यहां दिए गए निर्देशों का पालन करें: https://developers.facebook.com/docs/ios/getting-started/ )

उपयोगकर्ता को पहले पोस्ट करने की आवश्यकता है:

    let login: FBSDKLoginManager = FBSDKLoginManager()
        login.logIn(withPublishPermissions: ["publish_actions"], from: self) { (result, error) in

            if (error != nil) {
                print("publish_actions: \(error!)")
            } else if (result?.isCancelled)! {
                print("publish_actions: Canceled")
            } else if (result?.grantedPermissions.contains("publish_actions"))! {
                print("publish_actions: permissions granted: \(String(describing: result?.token.tokenString))")

                UserDefaults.standard.set(result?.token.tokenString, forKey: "facebook_token")

            }

        }

लॉगिंग के बाद टोकन को बचाएं और इसे FBSDKGraphRequest के माध्यम से एक संदेश पोस्ट करने के लिए उपयोग करें:

FBSDKGraphRequest.init(graphPath: "me/feed",
                           parameters: ["message": "text to post on Facebook"],
                           tokenString: "token",
                           version: "v2.10",
                           httpMethod: "POST").start(completionHandler: { (connection, result, error) -> Void in
                            if let error = error {
                                print("Error: \(error)")
                            } else {
                                print("Posted successfully!")
                            }
                           })

उममीद है कि इससे मदद मिलेगी।


फेसबुक शेयर के साथ आईओएस 11 के लिए यह समस्या (मेरे मामले में, उद्देश्य-सी में एफबीएसडीकेएयरडिडायलॉग) नवीनतम फेसबुक एपीआई ढांचे को अपग्रेड करके तय की गई है। पॉड के माध्यम से, जो वर्तमान में इस प्रकार है:

Podfile

  pod 'FBSDKCoreKit', '~> 4.27.0'
  pod 'FBSDKLoginKit', '~> 4.27.0'
  pod 'FBSDKShareKit', '~> 4.27.0'

एक कमांड प्रॉम्प्ट से, "फोंड खोज" का उपयोग करके फ़ोड का नवीनतम संस्करण दिखाया जाएगा। उदाहरण के लिए, फ़ोड खोज FBSDKSharekit





facebook-share