Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 提取facebook应用程序不工作系统的哈希键在CMD上显示错误消息_Android_Facebook_Sdk_Cmd_Connection - Fatal编程技术网

Android 提取facebook应用程序不工作系统的哈希键在CMD上显示错误消息

Android 提取facebook应用程序不工作系统的哈希键在CMD上显示错误消息,android,facebook,sdk,cmd,connection,Android,Facebook,Sdk,Cmd,Connection,我是facebook开发新手,因此我正在尝试构建一个与facebook连接的android应用程序,我阅读了android开发的facebook SDK,下载了facebook SDK,当涉及到facebook开发者webiste时,我在我需要的原生安卓应用程序中创建了该应用程序密钥散列 问题在于提取密钥散列时,windows 7中的CMD显示错误消息: 'keytool'未被识别为内部或外部命令可操作程序或批处理文件。 命令是: 有人能帮我吗 如果有任何帮助,我将不胜感激请检查keytool可

我是facebook开发新手,因此我正在尝试构建一个与facebook连接的android应用程序,我阅读了android开发的facebook SDK,下载了facebook SDK,当涉及到facebook开发者webiste时,我在我需要的原生安卓应用程序中创建了该应用程序密钥散列

问题在于提取密钥散列时,windows 7中的CMD显示错误消息:

'keytool'未被识别为内部或外部命令可操作程序或批处理文件。

命令是: 有人能帮我吗


如果有任何帮助,我将不胜感激

请检查
keytool
可执行文件所在的目录是否在您的
路径上


(例如,在我的Windows 7计算机上,它位于
C:\Program Files(x86)\Java\jre7\bin
文件夹中。)

如果在应用程序中打印它不是问题,您可以运行此代码来显示它

    try {
        PackageInfo info = getPackageManager().getPackageInfo("my.package.name", PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md;
            md = MessageDigest.getInstance("SHA-1");
            md.update(signature.toByteArray());
            Log.e("hash key", Base64.encodeToString(md.digest(), Base64.DEFAULT));
        }
    } catch (NameNotFoundException e1) {
        Log.e("name not found", e1.toString());
    } catch (NoSuchAlgorithmException e) {
        Log.e("no such an algorithm", e.toString());
    } catch (Exception e) {
        Log.e("exception", e.toString());
    }

@Sunil Mishrai已检查,可执行密钥工具的路径为C:\Program Files\Java\jre6\bin是否有任何错误??您可以使用
path
命令设置它,例如
path“C:\Program Files\Java\jre6\bin”
那么,我必须在cmd中写入的命令是什么?你能给我finale命令吗?我按照它所说的步骤进行操作,但仍然给出了关于keytool1的相同错误消息。在cmd 2中键入路径“C:\Program Files\Java\jre6\bin”
。键入
keytool
检查是否已添加keytool。3.运行您的命令生成fb hash@Ivo Beckers我需要的是在创建应用程序之前获取密钥hash,但感谢您的帮助
    try {
        PackageInfo info = getPackageManager().getPackageInfo("my.package.name", PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md;
            md = MessageDigest.getInstance("SHA-1");
            md.update(signature.toByteArray());
            Log.e("hash key", Base64.encodeToString(md.digest(), Base64.DEFAULT));
        }
    } catch (NameNotFoundException e1) {
        Log.e("name not found", e1.toString());
    } catch (NoSuchAlgorithmException e) {
        Log.e("no such an algorithm", e.toString());
    } catch (Exception e) {
        Log.e("exception", e.toString());
    }