我想在android中使用facebook登錄。當facebook應用程序安裝或未安裝時,它運行良好。簡而言之,它在Facebook應用和瀏覽器中工作正常,但如果安裝了Facebook Lite而不是Facebook原版應用,則有時無法正常工作,也無法返回結果。那麼如果安裝了Facebook Lite,是否可以在瀏覽器中使用Facebook進行登錄?用臉書登錄android
回答
請參閱this link.In此鏈接給你最好的教程,也它的工作與Facebook應用程序,Facebook的沒有沒有app.I facebook集成從該鏈接
只是在你的build.gradle compile 'com.facebook.android:facebook-android-sdk:4.+'
沒有添加此gradle這個需要下載Facebook SDK
- 下載Android SDK
- 獲取Facebook應用ID,包含的SDK, 和密鑰哈希添加到您的個人資料
- 啓用單點登錄您的應用
請閱讀文檔
我已經完成了所有這一步,但你不明白我的問題。它與Facebook應用程序和瀏覽器工作正常,但不適用於Facebook Lite應用程序。 –
你必須詳細解釋用戶有一個美好的一天! – redAllocator
您正在使用Facebook的SDK 4.0,有問題與Facebook精簡版。
編譯此SDK:compile 'com.facebook.android:facebook-android-sdk:[4,5)'
以及在gradle這個補充一點:
jcenter {
url "http://jcenter.bintray.com/"
}
更多信息,請參閱文件正確。
謝謝@Sagar Chavada瞭解我的問題。我將在我的代碼中使用它並給你一個更新。我希望它會起作用。 –
我曾嘗試過,但仍然無法正常工作。 –
**Process Login With Facebook**
**Working on Play Store**
**Link
- https://play.google.com/store/apps/details?id=com.codecube.airbucks&hl=en
**
**Step 1** Registered your new app? If you didn't, go to https://developers.facebook.com/apps/, click Add a New App in the top right and follow the instructions. **step by step**
**Manifest Permission**
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
**build.Gradle Dependency**
compile 'com.facebook.android:facebook-android-sdk:4.8.0'
/*compile 'com.facebook.android:facebook-android-sdk:[4,5)'*/
<activity android:name="com.facebook.FacebookActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name" />
<meta-data android:name="com.facebook.sdk.ApplicationName"
android:value="@string/app_name" />
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<provider android:authorities="com.facebook.app.FacebookContentProvider1854328631556764"
android:name="com.facebook.FacebookContentProvider"
android:exported="true"/>
**Layout Xml Code**
<com.facebook.login.widget.LoginButton
android:id="@+id/login_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
**Put own generate facebook Key in String.xml File**
<string name="facebook_app_id">1854328631556764</string>
<string name="fb_login_protocol_scheme">fb1854328631556764</string>
**MainActivity CODE**
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main1);
FacebookSdk.sdkInitialize(this.getApplicationContext());
AppEventsLogger.activateApp(this);
callbackManager = CallbackManager.Factory.create();
fbloginButton = (LinearLayout) findViewById(R.id.facebook_button);
fbloginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
int permissionCheck = ContextCompat.checkSelfPermission(MainActivity.this,
android.Manifest.permission.CAMERA);
if (permissionCheck == PackageManager.PERMISSION_GRANTED) {
//showing dialog to select image
callFacebook();
Log.e("permission", "granted");
} else {
ActivityCompat.requestPermissions(MainActivity.this,
new String[]{android.Manifest.permission.READ_EXTERNAL_STORAGE,
android.Manifest.permission.WRITE_EXTERNAL_STORAGE, android.Manifest.permission.CAMERA}, 1);
}
} else {
callFacebook();
}
}
});
}
**CAllOnFAcebook**
public void callFacebook() {
callbackManager = CallbackManager.Factory.create();
// LoginManager.getInstance().logInWithReadPermissions(MainActivity2.this, Arrays.asList("email"));
LoginManager.getInstance().logInWithReadPermissions(MainActivity.this, Arrays.asList("public_profile"));
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.e("keshav","onSuccess called ");
GraphRequest request = GraphRequest.newMeRequest(
loginResult.getAccessToken(),
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(
JSONObject object,
GraphResponse response) {
// Application code
Log.v("LoginActivityfacebook", response.toString());
try {
JSONObject data = response.getJSONObject();
facebookName = data.getString("name");
facebookEmail = data.getString("email");
facebookId = data.getString("id");
facebookLink = data.getString("link");
facebookLink = facebookLink.replace("https://www.facebook.com/app_scoped_user_id/", "");
facebookLink = facebookLink.replace("/", "");
Log.e("profilelink", "" + facebookLink);
facebookLink = "https://graph.facebook.com/" + facebookLink + "/picture";
Log.e("facebookName", "is -> " + facebookName);
Log.e("facebookEmail", "is -> " + facebookEmail);
Log.e("facebookId", "is -> " + facebookId);
Log.e("facebookLink", "is -> " + facebookLink);
Log.e("Keshav","Suceesfully Login "+facebookName);
} else {
CommonMethod.showAlert("Intenet Connectivity Failure", MainActivity.this);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,email,gender, birthday,link");
request.setParameters(parameters);
request.executeAsync();
}
@Override
public void onCancel() {
// App code
Log.i(TAG, "cancelTriggered");
}
@Override
public void onError(FacebookException exception) {
// App code
Log.i(TAG, "errorTriggered");
}
});
LoginManager.getInstance().logOut(); // TODO Add Me Using this previous facebook login id password logout
}
**Process Login With Facebook**
**Working on Play Store**
**Link https://play.google.com/store/apps/details?id=com.codecube.airbucks&hl=en**
- 1. 登錄臉書android ERROR
- 2. 使用oauth登錄臉書
- 3. 期:使用臉書登錄
- 4. Flex&JS用臉書登錄
- 5. Moodle用臉書登錄
- 6. anypic臉書登錄錯誤
- 7. 臉書連接並使用Twitter登錄
- 8. 使用臉書和retirve數據登錄
- 9. 不能使用臉書登錄與Firebase
- 10. 使用臉書Facebook for PHP登錄Facebook
- 11. 使用臉書登錄age_range權限
- 12. 使用臉書登錄功能混淆
- 13. 使用臉書登錄Laravel 4
- 14. 註冊並使用臉書登錄
- 15. 不能使用quickblox登錄臉書(iOS)
- 16. Firefox未使用hybridauth登錄到臉書
- 17. 使用臉書登錄與Scringo聊天
- 18. 用臉書authlogic和omniauth-facebook登錄
- 19. 使用httpurlconnection登錄到臉書
- 20. 使用臉書登錄和電子郵箱登錄
- 21. 什麼是檢索的Android臉書登錄用戶數據
- 22. 如何使用臉譜圖api登錄臉書
- 23. 如何使用c#登錄臉書而不使用臉書頁面
- 24. Faceboook登錄臉書的機器人
- 25. 臉書基於我的網站登錄
- 26. 臉書連接 - 自動登錄
- 27. 臉書一次登錄認證
- 28. 通過臉書登錄連接2
- 29. 以臉書登錄的可能性
- 30. 谷歌auth2臉書登錄不工作
請查看我的更新回答 –
謝謝@Bhupat Bheda。它在Facebook應用和瀏覽器中工作正常,但與facebook lite應用不兼容。 –