2015-03-23 2 views
1

Я пытаюсь интегрировать учетную запись facebook с моим app.buy я получаю ошибку App Not Setup: разработчики этого приложения не настроили это приложение правильно для входа в Facebook.Facebook интеграция с моим приложением в android

Вот мой LogCat

03-23 14:19:57.784: E/Package Name=(10548): com.pcs.sliderringtineproj 
03-23 14:19:57.854: E/Key Hash=(10548): UkWsiQcnfXkYq9BLp4yzhmhcnbk= 

ответ

0

MainActivity.Class

package com.example.facebooklogin; 

import android.support.v4.app.FragmentActivity; 
import android.os.Bundle; 

public class MainActivity extends FragmentActivity { 

private MainFragment mainFragment; 
private static final String TAG = "MainFragment"; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    if (savedInstanceState == null) { 
     // Add the fragment on initial activity setup 
     mainFragment = new MainFragment(); 
     getSupportFragmentManager() 
     .beginTransaction() 
     .add(android.R.id.content, mainFragment) 
     .commit(); 
    } else { 
     // Or set the fragment from restored state info 
     mainFragment = (MainFragment) getSupportFragmentManager() 
     .findFragmentById(android.R.id.content); 
    } 
} 


} 

MainFragment.Class (для Facebook)

package com.example.facebooklogin; 

import java.util.Arrays; 

import com.facebook.Request; 
import com.facebook.Response; 
import com.facebook.Session; 
import com.facebook.SessionState; 
import com.facebook.UiLifecycleHelper; 
import com.facebook.model.GraphUser; 
import com.facebook.widget.LoginButton; 

import android.content.Intent; 
import android.os.Bundle; 
import android.support.v4.app.Fragment; 
import android.util.Log; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 

public class MainFragment extends Fragment { 

private static final String TAG = "MainFragment"; 
private UiLifecycleHelper uiHelper; 

private Session.StatusCallback callback = new Session.StatusCallback() { 
    @Override 
    public void call(Session session, SessionState state, Exception exception) { 
     onSessionStateChange(session, state, exception); 
    } 
}; 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 

    uiHelper = new UiLifecycleHelper(getActivity(), callback); 
    uiHelper.onCreate(savedInstanceState); 

    View view = inflater.inflate(R.layout.main, container, false); 

    LoginButton authButton = (LoginButton) view.findViewById(R.id.authButton); 
    authButton.setReadPermissions(Arrays.asList("public_profile", "email", 
      "user_location")); 

    authButton.setFragment(this); 

    return view; 
} 

private void onSessionStateChange(Session session, SessionState state, 
     Exception exception) { 
    if (state.isOpened()) { 
     Log.i(TAG, "Logged in..."); 
     makeMeRequest(session); 
    } else if (state.isClosed()) { 
     Log.i(TAG, "Logged out..."); 
    } 
} 

private void makeMeRequest(final Session session) { 
    // Make an API call to get user data and define a 
    // new callback to handle the response. 
    Request request = Request.newMeRequest(session, 
      new Request.GraphUserCallback() { 
       /* 
       * @Override public void onCompleted(GraphUser user, Response 
       * response) { // If the response is successful if (session == 
       * Session.getActiveSession()) { if (user != null) { // Set the 
       * id for the ProfilePictureView // view that in turn displays 
       * the profile picture. Log.e("user",user.toString()); } } if 
       * (response.getError() != null) { // Handle errors, will do so 
       * later. } } 
       */ 

       @Override 
       public void onCompleted(GraphUser user, Response response) { 
        // TODO Auto-generated method stub 
        Log.e("user", user.toString()); 
        Log.e("username", user.getName()); 
       } 
      }); 
    request.executeAsync(); 
} 

@Override 
public void onResume() { 
    super.onResume(); 
    // For scenarios where the main activity is launched and user 
    // session is not null, the session state change notification 
    // may not be triggered. Trigger it if it's open/closed. 
    Session session = Session.getActiveSession(); 
    if (session != null && (session.isOpened() || session.isClosed())) { 
     onSessionStateChange(session, session.getState(), null); 
    } 
    uiHelper.onResume(); 
} 

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

@Override 
public void onPause() { 
    super.onPause(); 
    uiHelper.onPause(); 
} 

@Override 
public void onDestroy() { 
    super.onDestroy(); 
    uiHelper.onDestroy(); 
} 

@Override 
public void onSaveInstanceState(Bundle outState) { 
    super.onSaveInstanceState(outState); 
    uiHelper.onSaveInstanceState(outState); 
} 
} 
+0

до этого, пожалуйста, настроить ваши ключевые хэшей. следуйте этим ссылкам: https://developers.facebook.com/docs/android/getting-started#create_hash. Установите файл манифеста, указав App_ID –

Смежные вопросы