the*_*osh 5 android facebook android-facebook
我在我的应用程序中有一个FB AuthButton正在连接到FB进程
我有一个设备运行旧版本的FB应用程序(版本1.8.3 - 1.8.4).
当我单击登录按钮时,该过程不会启动本机应用程序,而是调用浏览器来完成该过程.
在日志中,我看到了这些日志:
06-16 12:26:00.709: E/ActivityThread(21597): Failed to find provider info for com.facebook.katana.provider.AttributionIdProvider
06-16 12:26:03.321: E/Tab(21678): onReceivedError -10 fbconnect://success#access_token=MY_TOKEN&expires_in=5170432 The protocol is not supported.
Run Code Online (Sandbox Code Playgroud)
在屏幕上,浏览器显示此屏幕截图:

有关如何解决这个问题或想法回到我的应用程序的任何想法?
我们发现Facebook版本1.9.8+有效,版本代码版本代码为40477+.
当我们使用已弃用的Facebook.java类时,我们修改了validateAppSignatureForPackage().它现在似乎适用于所有版本的Facebook应用程序.
private boolean validateAppSignatureForPackage(Context context, String packageName)
{
PackageInfo packageInfo;
try
{
packageInfo = context.getPackageManager().getPackageInfo(packageName,
PackageManager.GET_SIGNATURES);
if(packageInfo.versionCode<40477)
{
Log.i("validateAppSignatureForPackage",
"Your facebook app version is prior to 1.9.8. Update your facebook app");
return false;
}
}
catch (NameNotFoundException e)
{
Log.i("validateAppSignatureForPackage", e.getMessage());
return false;
}
catch(Exception e)
{
Log.i("validateAppSignatureForPackage", e.getMessage());
return false;
}
for (Signature signature : packageInfo.signatures) {
if (signature.toCharsString().equals(FB_APP_SIGNATURE)) {
return true;
}
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
如果你想自己测试一下,你可以在这里找到以前版本的facebook应用程序:http://www.androiddrawer.com/2274/download-facebook-for-android-1-9-7-app-apk/# .Uctn6Zwaux4
| 归档时间: |
|
| 查看次数: |
2157 次 |
| 最近记录: |