Как поделиться в facebook со ссылкой на приложение? Быстрый

Привет, в общем, я хочу поделиться с Facebook, используя их API Facebook, но как мне добавить ссылку, по которой, если они нажмут, они смогут вернуться в приложение или они перейдут в магазин приложений, если у них не установлено приложение?

Изменить ^

Итак, я хочу прояснить свой вопрос. Так, например, в приложении у меня есть страница продукта, на которой отображается продукт. Затем я делюсь этим продуктом с Facebook, и когда вы публикуете его в Facebook (я уже знаю, как добавить изображение и текст), я хочу, чтобы он отображал приложение, и когда вы нажимаете на приложение, оно переходит прямо на эту страницу продукта, ЕСЛИ приложение установлен. Если нет, то он отправится в магазин приложений, чтобы загрузить этот продукт.


person Jov    schedule 09.07.2018    source источник
comment
Привет, Джов, я реализовал эти функции до одного года. Пожалуйста, перейдите по ссылке и дайте мне знать stackoverflow.com/questions/42083226/   -  person Sailendra    schedule 09.07.2018


Ответы (2)


Сначала обязательно подключите IBAction к коду вашего контроллера представления.

Совместное использование URL:

    @IBAction func shareURL(_ sender: Any) {
    let URLstring =  String(format:"https://itunes.apple.com/in/app/facebook/id284882215?mt=8")
    let urlToShare = URL(string:URLstring)
    let title = "title to be shared"
    let activityViewController = UIActivityViewController(
        activityItems: [title,urlToShare!],
        applicationActivities: nil)
    activityViewController.popoverPresentationController?.sourceView = self.view
    //so that ipads won't crash
    present(activityViewController,animated: true,completion: nil)
}

Обмен текстами:

    @IBAction func shareText(_ sender: Any) {
    let text = "Text to be shared"
    let activityViewController = UIActivityViewController(activityItems:[text],applicationActivities:nil)
   activityViewController.popoverPresentationController?.sourceView = self.view
    present(activityViewController,animated: true,completion: nil)
}

Обмен изображениями:

    @IBAction func shareImage(_ sender: Any) {
    let image = #imageLiteral(resourceName: "myImage")
    let activityViewController = UIActivityViewController(activityItems:[image],applicationActivities:nil)
   activityViewController.popoverPresentationController?.sourceView = self.view
    present(activityViewController,animated: true,completion: nil)
}

Когда пользователь нажимает кнопку Facebook, чтобы поделиться, он напрямую подключает его либо к магазину приложений (для тех, у кого его нет), либо к Facebook для обмена.

person Rihab D    schedule 09.07.2018
comment
Есть ли способ показать изображение с текстом внутри URL? - person Jov; 13.07.2018

Если я правильно понял ваш вопрос, то следующее может решить вашу проблему. Он проверит, установлен ли Facebook на устройстве, если установлен FB, он откроет Facebook, в противном случае откроет ссылку iTunes для загрузки приложения. Это swift 4. Также вам нужно добавить схему URL для FB в info.plist.

    <key>LSApplicationQueriesSchemes</key>
    <array>
        <string>fb</string>
    </array>

        var url = URL(string: "fb://")!

        if (UIApplication.shared.canOpenURL(url)) {
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
            print("Opened FB App")
        }
        else{
            url = URL(string: "https://itunes.apple.com/in/app/facebook/id284882215?mt=8")!
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
                print("Opened FB in iTunes")            
        }
person SThakur    schedule 09.07.2018
comment
Кнопка «Назад» будет видна в верхнем левом углу с названием вашего приложения. Вы можете вернуться к своему приложению. - person SThakur; 09.07.2018
comment
Привет @ user160611990 не приложение fb, а приложение, которое я делаю в виде ссылки, когда вы делитесь им в facebook, а затем переходите в магазин приложений, чтобы установить приложение, которое я сделал, если оно не установлено. - person Jov; 09.07.2018
comment
@user16011990 user16011990 это функция deeplink. То, что вы написали, это совсем другое - person Sailendra; 09.07.2018