Я пытаюсь создать приложение для Android с помощью единого входа в Facebook, поэтому сначала я создал тестовое приложение для проверки их API.
Я следовал руководству по запуску Android здесь, наfacebook dev site .Все работало хорошо.Когда приложение запускалось, оно позволяло мне входить в Facebook, используя традиционную регистрацию в Интернете (поскольку Facebook не был установлен на эмуляторе).Затем я заметил, что если у вас уже установлен Facebook, то для входа в систему будет использоваться более необычный экран.
Итак, я установил Facebook, открыл приложение, все прошло хорошо.Приложение закрылось и снова открылось, и на экране появилось окно повторной авторизации Facebook, но на этот раз без информации об этом ..
![enter image description here](https://i.stack.imgur.com/8Ujot.png)
Что немного странно ... поэтому, когда я нажимаю "Хорошо, это отображается ..
![enter image description here](https://i.stack.imgur.com/PFV4e.png)
, поэтому, если я снова нажму "ОК", он просто откроет facebook в браузере.Если это как-то связано с моим кодом?Или что-то на стороне Facebook?У меня такая же проблема как на эмуляторе, так и на реальном устройстве.На эмуляторе было запущено приложение facebooks dev, которое поставлялось вместе с sdk, и на устройстве установлено последнее приложение facebook от рынка Android.
Код здесь ..
public class Home extends Activity {
Facebook facebook = new Facebook("Blanked the ID :)");
String FILENAME = "app_data";
private SharedPreferences mPrefs;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mPrefs = getPreferences(MODE_PRIVATE);
String access_token = mPrefs.getString("access_token", null);
long expires = mPrefs.getLong("access_expires", 0);
if (access_token != null) facebook.setAccessToken(access_token);
if (expires != 0) facebook.setAccessExpires(expires);
if (!facebook.isSessionValid()) {
facebook.authorize(this, new DialogListener() {
@Override
public void onComplete(Bundle values) {
// TODO Auto-generated method stub
}
@Override
public void onFacebookError(FacebookError e) {
// TODO Auto-generated method stub
}
@Override
public void onError(DialogError e) {
// TODO Auto-generated method stub
}
@Override
public void onCancel() {
// TODO Auto-generated method stub
}
});
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
Заранее спасибоза любую помощь!(