2014-01-18 2 views
2

Я не могу открыть сеанс в последнем sdk в facebook в Android. Когда я отлаживаю свой код, он показывает состояние сеанса: «ОТКРЫТИЕ» -> не «ОТКРЫТЬ». Я помещен в эту проблему пару дней, и в Интернете нет такой проблемы, поэтому, пожалуйста, помогите мне. Вот мой пример Главный класс:Не удается открыть сеанс в facebook в android

public class Miranda extends Activity { 
    /** 
    * Called when the activity is first created. 
    */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     final TextView userNameView = (TextView) findViewById(R.id.userName); 
     Session.openActiveSession(this, true, new Session.StatusCallback() { 

      // callback when session changes state 
      @Override 
      public void call(Session session, SessionState state, Exception exception) { 
       if (session.isOpened()) { 

        // make request to the /me API 
        Request.executeMeRequestAsync(session, new Request.GraphUserCallback() { 

         // callback after Graph API response with user object 
         @Override 
         public void onCompleted(GraphUser user, Response response) { 
          if (user != null) { 
           userNameView.setText("Hello " + user.getName() + "!"); 

//        profilePictureView.setProfileId(user.getId()); 
          } 
         } 
        }); 
       } 
      } 
     }); 
    } 
} 

А вот AndroidManifest.xml:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
      package="com.example.Miranda" 
      android:versionCode="1" 
      android:versionName="1.0"> 
    <uses-sdk android:minSdkVersion="8"/> 
    <application android:label="@string/app_name"> 
     <activity android:name="Miranda" 
        android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN"/> 
       <category android:name="android.intent.category.LAUNCHER"/> 
      </intent-filter> 
     </activity> 
     <activity android:name="com.facebook.LoginActivity" 
        android:label="@string/title_facebook_login"> 
     </activity> 
     <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/> 
    </application> 
    <uses-permission android:name="android.permission.INTERNET"></uses-permission> 
</manifest> 

и, наконец, strings.xml:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="app_name">Miranda</string> 
    <string name="app_id">241765162664333</string> 
    <string name="title_facebook_login">Log Into Facebook</string> 
</resources> 

ответ

6

Ребята, я могу быть самым быстрым человеком, который решает свою проблему сразу же после сообщения в stackoverflow. Проблема заключалась в том, что я удалил переопределенную функцию при очистке других глупых программных кодов. Я добавил его снова в свой основной класс:

@Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data); 
    } 
Смежные вопросы