2014-10-16 37 views
0

我正在工作android facebook sdk。我有divice已安裝時的問題Facebook應用程序(無效密鑰散列)我在此代碼android connect facebook無效keyhash

public class SpleshScreen extends Activity { 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.activity_splesh_screen); 

    try { 
     PackageInfo info = getPackageManager().getPackageInfo(
       "mypackage", 
       PackageManager.GET_SIGNATURES); 
     for (android.content.pm.Signature signature : info.signatures) { 
      MessageDigest md = MessageDigest.getInstance("SHA"); 
      md.update(signature.toByteArray()); 
      Log.wtf("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); 
      } 
    } catch (NameNotFoundException e) { 

    } catch (NoSuchAlgorithmException e) { 

    } 

    Thread background = new Thread() { 

     public void run() { 

      try { 
       // Thread will sleep for 2 seconds 
       sleep(2 * 1000); 


       // 
       // Log.e("asdasdasdasd",my_json); 

       // After 2 seconds redirect to another intent 
       Intent in = new Intent(getApplicationContext(), 
         MainmoviesActivity.class); 
       startActivity(in); 

       // Remove activity 
       finish(); 

      } catch (Exception e) { 

      } 
     } 
    }; 

    // start thread 
    background.start(); 
} 

}

recived keyhash和我在Facebook的應用程序添加了此keyhash。 我有問題,只有當divice有facebook應用程序(當我運行我的應用程序與USB) 我做錯了什麼?如果有人知道解決方案,請幫我

+0

你可以使用一個工具,我爲iOS和Windows,看看這裏:http://stackoverflow.com/a/17732453/2226605並在那裏幫助你更新我的答案。謝謝 – Shahar 2016-01-16 20:34:47

回答

0

它是因爲生成哈希鍵是錯誤的。

爲了解決遵循這個步驟:

粘貼的OnCreate以下代碼()。

try { 
    PackageInfo info = getPackageManager().getPackageInfo(
      "com.example.packagename", 
      PackageManager.GET_SIGNATURES); 
    for (Signature signature : info.signatures) { 
     MessageDigest md = MessageDigest.getInstance("SHA"); 
     md.update(signature.toByteArray()); 
     Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); 
     } 
} catch (NameNotFoundException e) { 

} catch (NoSuchAlgorithmException e) { 

} 

看到這個線程

https://stackoverflow.com/a/23863110/2176734

這必將解決您的問題。

+0

謝謝我也嘗試過,但我收到了同樣的keyhashe – viviano 2014-10-16 10:59:00

0

1.go到developer.facebook.com

2.select您的應用程序

3.Click設置

4.click添加平臺

5.add所有必填字段

6.在那裏添加密鑰哈希

7.Click保存更改

現在檢查