Приложение Android не будет подключаться к серверу - PullRequest
0 голосов
/ 26 января 2012

Раньше мое приложение для Android могло подключаться к серверу Facebook через API, но теперь по какой-то причине этого не происходит. Я продолжаю получать это сообщение в своем журнале. Cat

D / Facebook-authorize (417): Ошибка входа: com.facebook.android.DialogError: Не удалось установить соединение с сервером.

Я прочитал много вопросов о переполнении стека, без ответа. Я надеюсь, что кто-то может помочь мне с этим. Спасибо!

Вот мой код с отредактированным идентификатором приложения

public class BreadcrumbsActivity extends Activity {

static Facebook facebook = new Facebook("*************");
String FILENAME = "AndroidSSO_data";
static SharedPreferences mPrefs;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    /*
     * Get existing access_token if any
     */
    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);           
    }

    /*
     * Only call authorize if the access_token has expired.
     */
    if(!facebook.isSessionValid()) {

        facebook.authorize(this, new String[] {"user_likes", "user_photos", "email", "offline_access", "publish_actions"}, new DialogListener() {
            @Override
            public void onComplete(Bundle values) {
                SharedPreferences.Editor editor = mPrefs.edit();
                editor.putString("access_token", facebook.getAccessToken());
                editor.putLong("access_expires", facebook.getAccessExpires());
                editor.commit();

                Toast.makeText(getApplicationContext(),
                        "Login Succesful.",
                        Toast.LENGTH_LONG).show();

                Intent intent = new Intent(BreadcrumbsActivity.this, MainMenu.class);                   
                BreadcrumbsActivity.this.startActivity(intent);
            }

            @Override
            public void onFacebookError(FacebookError error) {
                Toast.makeText(getApplicationContext(),
                        "Login Failed.",
                        Toast.LENGTH_LONG).show();

                Intent intent = new Intent(BreadcrumbsActivity.this, MainMenu.class);                   
                BreadcrumbsActivity.this.startActivity(intent);
            }

            @Override
            public void onError(DialogError e) {}

            @Override
            public void onCancel() {}
        });
    }
}


@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    facebook.authorizeCallback(requestCode, resultCode, data);
}

}

1 Ответ

0 голосов
/ 26 января 2012

Ошибка - 417 Ожидание не удалось

Код состояния 417 означает, что серверу не удалось правильно выполнить запрос.Один из заголовков, отправленных на сервер, заголовок «Expect», указывает на ожидание, которое сервер не может удовлетворить.

...