2014-01-18 2 views
2

안드로이드에서 페이스 북의 최신 SDK에서 세션을 열 수 없습니다. 내 코드를 디버깅 할 때 세션 상태를 보여줍니다 : "OPENING"-> "OPEN". 나는 며칠 동안이 이슈에 쌓여 있으며 인터넷에 그러한 종류의 문제가 없으므로 나를 도와주십시오. AndroidManifest.xml에안드로이드에서 페이스 북에서 세션을 열 수 없습니다.

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()); 
          } 
         } 
        }); 
       } 
      } 
     }); 
    } 
} 

그리고 여기에 있습니다 : :

<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); 
    }