用于密钥哈希目的的openssl安装

时间:2013-10-11 03:20:25

标签: android facebook openssl

我正在做一个关于facebook与android app整合的教程,它需要一个haskey才能工作并生成一个密钥哈希需要安装一个openssl下载已经在这个链接https://code.google.com/p/openssl-for-windows/downloads/detail?name=openssl-0.9.8k_WIN32.zip&can=2&q=但我不知道如何当我点击openssl应用程序时它安装它,它会提示命令行我如何安装openssl

1 个答案:

答案 0 :(得分:1)

您也可以使用此代码生成密钥哈希...

main.xml中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<EditText  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/KeyText"
    />
</LinearLayout>

MainActivity.java

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import android.app.Activity;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.Signature;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        try {
               PackageInfo info = getPackageManager().getPackageInfo("com.key", PackageManager.GET_SIGNATURES);
               for (Signature signature : info.signatures) {
                    MessageDigest md = MessageDigest.getInstance("SHA");
                    md.update(signature.toByteArray());

                      TextView tvmyName = (TextView)findViewById(R.id.KeyText);
                      tvmyName.setText(Base64.encodeBytes(md.digest()));


               }
            } catch (NameNotFoundException e) {

            } catch (NoSuchAlgorithmException e) {

            }

    }
}