Чтобы проверить, установлен ли ваш пользователь на Facebook:
public static boolean isPackageInstalled(Context c, String targetPackage) {
PackageManager pm = c.getPackageManager();
try {
PackageInfo info = pm.getPackageInfo(targetPackage, PackageManager.GET_META_DATA);
} catch (NameNotFoundException e) {
return false;
}
return true;
}
Вы можете использовать следующие пакеты:
com.facebook.orca
com.facebook.katana
com.example.facebook
com.facebook.android
И проверить, имеет ли он эту функцию:
boolean hasPackage = isPackageInstalled(MainActivity.this, "com.facebook.katana");
Поскольку у него (или нет) установлено приложение, вы можете использовать его учетные данные, используя Facebook SDK.
callbackManager = CallbackManager.Factory.create();
loginButton = (LoginButton) findViewById(R.id.login_button);
loginButton.setReadPermissions("email");
// If using in a fragment
loginButton.setFragment(this);
// Callback registration
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
// App code
}
@Override
public void onCancel() {
// App code
}
@Override
public void onError(FacebookException exception) {
// App code
}
});
Подробнее об этом можно прочитать в:
https://developers.facebook.com/docs/facebook-login/android
Для предотвращения проблем с SDK:
if (Build.VERSION.SDK_INT >= 21) {
webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
}
кодируйте с помощью WebView с помощью API Facebook, который может помочь вам:
https://gist.github.com/nguyenkims/28f3dc9d2414c3184263fab52b93351e