且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

无法找到com.facebook.katana.provider.AttributionIdProvider的提供者信息

更新时间:2023-01-19 12:26:19

以下原因:


  1. 您没有连接到互联网

  2. 您没有授予互联网访问权限(Manifest.xml)

  3. 您尚未为该应用使用正确的哈希

  4. 您没有提供正确的应用程式编号


Anyone knows what does this error mean? I get it in LogCat shell every time I connect with my android application to Facebook (via emulator).

The code which in charge of authorize functionality:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.authorize);
    mPrefs = getPreferences(MODE_PRIVATE);
    loginPref = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    String access_token = mPrefs.getString("access_token", null);
    long expires = mPrefs.getLong("access_expires", 0);
    if(access_token != null) {
        Singelton.mFacebook.setAccessToken(access_token);
    }
    if(expires != 0) {
        Singelton.mFacebook.setAccessExpires(expires);
    }

    Singelton.mFacebook.authorize(this, new String[] {"email","user_birthday"}, new DialogListener() {
        @Override
        public void onComplete(Bundle values) {
            SharedPreferences.Editor editor = mPrefs.edit();
            editor.putString("access_token", Singelton.mFacebook.getAccessToken());
            editor.putLong("access_expires", Singelton.mFacebook.getAccessExpires());
            editor.commit();
            SharedPreferences.Editor logEditor = loginPref.edit();
            logEditor.putBoolean("login", true);
            logEditor.commit();
            addUser();
        }

        @Override
        public void onFacebookError(FacebookError error) {
            errorHandler();
        }

        @Override
        public void onError(DialogError e) {
            errorHandler();
        }

        @Override
        public void onCancel() {
            Log.d("MyApp", "Facebook cancel");
        }
    });

}

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

This can happen due to the following reasons:

  1. You are not connected to internet
  2. You have not given permission for internet access ( Manifest.xml)
  3. You have not used a correct hashkey for the app
  4. You did not provide a correct App Id