iOSアプリでSwifterを使ったTwitter自動投稿機能をつけようとしているのですが、下のコードを実行すると、Twitterの認証画面に飛んだ後、認証ボタンを押すと「safari cannot open the page because the address is invalid.」というアラートが出てツイートができませんどうしてでるのか、また解決法などわかる方がいらっしゃれば教えていただきたいです。よろしくお願いします
swift
1func tweet(){ 2 let TWITTER_CONSUMER_KEY = "Cw3..." 3 let TWITTER_CONSUMER_SECRET = "g2wa..." 4 let tokenKey = self.appStatus.twitterTokenKey 5 let tokenSecret = self.appStatus.twitterTokenSecret 6 if tokenKey == nil || tokenSecret == nil { 7 let swifter = Swifter(consumerKey: TWITTER_CONSUMER_KEY, consumerSecret: TWITTER_CONSUMER_SECRET) 8 9 swifter.authorize( 10 withCallback: URL(string: "swifter-Cw3g...://")!, 11 presentingFrom: self, 12 success: { accessToken, response in 13 print(response) 14 print("success") 15 //実行されない 16 guard let accessToken = accessToken else { return } 17 self.appStatus.twitterTokenKey = accessToken.key 18 self.appStatus.twitterTokenSecret = accessToken.secret 19 self.tweet() 20 }, failure: { error in 21 print(error) 22 print("error") 23 //実行されない 24 }) 25 26 } else { 27 print("done") 28 //実行されない 29 let swifter = Swifter(consumerKey: TWITTER_CONSUMER_KEY, consumerSecret: TWITTER_CONSUMER_SECRET, oauthToken: tokenKey!, oauthTokenSecret: tokenSecret!) 30 Firestore.firestore().collection("user").document(UserDefaults.standard.string(forKey: "chatroom")!).getDocument{document,err in 31 swifter.postTweet(status: "質問です#(document!.data()!["work1"] ?? ""),#(document!.data()!["work2"] ?? ""),#(document!.data()!["work3"] ?? "")\n\n" + self.atext + "回答募集してます。よろしくお願いします????♂️\n\n#質問,#回答募集中,#センハナ(質問)", success: { response in 32 print(response) 33 }, failure: { error in 34 print(error) 35 })} 36 } 37 38}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。