Pregunta Generar un hash clave para aplicaciones de Facebook en Android


En https://developers.facebook.com/docs/android/getting-started/facebook-sdk-for-android/ mostramos cómo obtener el hash clave, pero no sé qué puedo hacer con "keytool -exportcert -alias androiddebugkey -keystore% HOMEPATH% .android \ debug.keystore | openssl sha1 -binary | openssl base64". En el sitio web hablamos de la utilidad keytool de Java, pero no sé de qué se trata. Por favor, quiero crear mi aplicación de Facebook para Android, no sé cómo funciona todo esto. Necesito a alguien que me ayude paso a paso. Gracias por adelantado.


5
2017-10-27 14:43


origen


Respuestas:


Keytool es parte de Java JDK. El comando keytool que mencionó dará como resultado una representación cifrada en base64, sha1 de su clave de depuración. Su aplicación se firma con esta clave de depuración cada vez que la compila. Facebook usa esta clave para verificar que su computadora compiló la aplicación. Por lo tanto, en la interfaz de la aplicación Gestionar de Facebook, pondría la salida del comando keytool.

Si tiene problemas para ejecutar el comando, es más probable que lo haga con rutas incorrectas. Tratar:

"C:\Program Files\Java\jdk1.6.0_33\bin\keytool.exe" -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" sha1 -binary | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" base64

Donde cambia las rutas entre comillas a las rutas de openssl.exe y keytool.exe en su computadora. (Es posible que tengas que descargar openssl primero)


4
2017-10-27 14:56



sigue estos pasos:  1. Establecer ruta en su cmd.

    C:\Program Files\Java\jdk1.7.0_03\bin
  1. Luego descarga openssl-0.9.8k_WIN32. Pégalo en tu carpeta C:
  2. Usa el siguiente comando

     C:\Program Files\Java\jdk1.7.0_03\bin\keytool -export -alias myAlias -keystore            
     C:\Users\Admin\.android\debug.keystore | C:\openssl-0.9.8k_WIN32\bin\openssl enc -a -e
    

    4. Solicitará password.put PASSWORD = android

  3. Obtendrás tu hashkey. para más información visita: [ http://android-developer-helpdesk.blogspot.com/2014/04/hash-key-generation.html ]

3
2018-04-03 10:27



en primer lugar compruebe su sistema que es de 64 bits o 32 bits.

Si es de 32 bits, da el siguiente comando.

keytool -export -alias myAlias -keystore C:\Users\monue\.android\debug.keystore | C:\openssl\bin\openssl sha1 -binary | C:\openssl\bin\openssl enc -a -e

y si es de 64 bits da el siguiente comando

"C:\Program Files\Java\jdk1.6.0_33\bin\keytool.exe" -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" sha1 -binary | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" 

base64


3
2017-10-28 07:46



No importa la computadora, la forma más fácil de hacerlo es simplemente descargando (openssl) - (https://code.google.com/p/openssl-for-windows/downloads/list) y colocándolo en una nueva carpeta en la Unidad c como así ... ejemplo {C: \ openssl}

Ahora, el símbolo del sistema debe tener un aspecto similar al buscar una clave de liberación (¡simplemente cambie de ubicación para depurar el almacén de claves o viceversa!

Por favor, elimine todas las comillas antes de pegar en el símbolo del sistema ...

keytool -exportcert -alias "el nombre de su almacén de claves va aquí" -keystore "ubicación donde está su archivo de almacén de claves" | C: \ openssl \ bin \ openssl.exe sha1 -binary | C: \ openssl \ bin \ openssl.exe base64


2
2017-07-24 18:30



Si está utilizando Android Studio como plataforma de desarrollo, será fácil obtener Key Hash para Facebook.

1: Crear un archivo java MyApplication.java .

2: Pegue el siguiente código en él.

public class MyApplication extends MultiDexApplication {

public void onCreate(){
    super.onCreate();
    PrintKeyHash();

}

public void PrintKeyHash(){
    try{
        PackageInfo info = getPackageManager().getPackageInfo("com.bhunnu.nearveg", PackageManager.GET_SIGNATURES);
        for (Signature signature: info.signatures){
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            Log.e("Your System KEYHASH : ", Base64.encodeToString(md.digest(), Base64.DEFAULT));
        }
    }catch (PackageManager.NameNotFoundException e){

    }catch (NoSuchAlgorithmException e){

    }
}

@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

}

3: ahora abra su archivo de manifiestos y en la etiqueta de la aplicación escriba android: name = ". MyApplication".

igual que abajo en AndroidManifest.xml

 <application
    android:allowBackup="true"
    android:icon="@drawable/icon1"
    android:label="@string/app_name"
    android:name=".MyApplication.java"
    android:theme="@style/AppTheme">

Si ya usa el nombre como android: name = "android.support.multidex.MultiDexApplication", entonces también reemplácelo porque lo he usado es multidexing en el archivo MyApplication.java.

está usando cualquier nombre que también lo reemplazó una vez por el archivo MyApplication.java después de llegar al Hash, puede usar su nombre de archivo anterior.


1
2017-09-24 08:52