[英]Twitter Login failed on only latest Twitter app in my android app
我的應用程序在 PlayStore 上發布,並且 Twitter 登錄一直運行良好。
但是今天,我發現Twitter 登錄不起作用!
我的應用程序使用 Twitter SDK,而不是 Firebase Auth。
implementation "com.twitter.sdk.android:twitter-core:3.3.0"
登錄代碼為:
TwitterAuthClient.authorize(activity, object : Callback<TwitterSession>() {
override fun success(result: Result<TwitterSession?>) {
// 'authorize' success and `result.data?.authToken` is not null but
// `result.data?.authToken?.token` and `result.data?.authToken?.secret` are null
TwitterCore.getInstance().apiClient.accountService.verifyCredentials(false, false, true).enqueue(object : Callback<User>() {
override fun success(result: Result<User?>) {
}
override fun failure(exception: TwitterException) {
// 403 Error! - com.twitter.sdk.android.core.TwitterApiException: HTTP request failed, Status: 403
}
})
}
override fun failure(e: TwitterException) {
}
})
9.54.0-release.0
)twitter登錄在Twitter應用程序上處理並出現問題我的應用程序沒有改變任何東西。 我認為最新的 Twitter 應用程序有一些問題。 但我不知道如何處理。
我的同事也檢查了這個問題。 他的設備上有舊版本的 Twitter 應用程序9.32.0-release.0
。 當時 Twitter 登錄工作正常。 在他將 Twitter 應用程序更新為9.54.0-release.0
后,Twitter 登錄不起作用。
[更新]
我創建了一個新的示例應用程序並正在進行測試。 但是我的新示例應用程序運行良好(twitter 登錄運行良好。)。 我發布的應用程序仍然無法運行! (無法使用推特登錄)。
官方 Twitter 應用程序( 9.54.0-release.0
)不會將令牌信息返回到我發布的應用程序。 但它會將令牌信息返回到我的新示例應用程序。 我很困惑。
這兩個應用程序使用相同的 SDK。 (implementation com.twitter.sdk.android:twitter-core:3.3.0
) And the kotlin codes are identical. 他們使用相同的customer key
和customer secret
。
我發現這很奇怪。
看起來不一樣? 為什么它們不同?
相同的 SDK,相同的代碼,相同的消費者密鑰/秘密!
請給我一些提示好嗎? 什么時候出現第二張截圖? 什么條件? 請問我可以知道嗎?
我檢查了twitter-kit-android
(Android Twitter SDK)。
當我的應用程序可以在設備上搜索com.twitter.android
時,會顯示第一個屏幕截圖。 當我的應用程序無法在設備上搜索com.twitter.android
時,會顯示第二個屏幕截圖。
我發布的應用程序有queries
標簽:
<queries>
<package android:name="com.twitter.android" />
</queries>
因此,我的應用程序可以搜索twitter
應用程序。
The twitter sdk checks that if the app can search com.twitter.android
then start SingleSignOnActivity
, and it doesn't return token information. 但是如果應用程序無法搜索com.twitter.android
然后啟動OAuthActivity
,它會返回令牌信息。
但即使我刪除查詢和
我在更新到 Twitter app 9.54.0-release.0
時也遇到了這個問題,我無法從SingleSignOnActivity
獲取令牌。 昨天 Twitter 已經發布9.54.1-release.0
,新版本解決了這個問題,你可以從SingleSignOnActivity
獲取令牌,所以我的實現是當我的應用程序無法獲取令牌時,我會顯示一個對話框通知用戶更新 Twitter 應用程序最新版本,然后嘗試重新登錄。
我認為搜索 Twitter 應用程序來自twitter-kit-android
,因此當您從應用程序中刪除查詢時它不起作用。 https://github.com/twitter-archive/twitter-kit-android/blob/02ea78c269ec50161d4bb565441f0fef74fc72b8/twitter-core/src/main/java/com/twitter/sdk/android/core/identity/SSOAuthHandler.java#L151
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.