参考文章(http://www.pocketdigi.com/20141129/1398.html)真心感谢这位朋友,他的代码可以正常跑通,网上其他人也有类似的代码,但是都报错,这几天弄这个NDK签名 很折磨人啊
通过包名和签名的比对,可以防止so库被其他人二次打包。代码整理如下:
Java中获取应用签名hashcode
public static int getSignature(Context context) {
try {
PackageInfo packageInfo = context.getPackageManager().getPackageInfo(
"com.test", PackageManager.GET_SIGNATURES);
Signature[] signs = packageInfo.signatures;
Signature sign = signs[0];
return sign.hashCode();
} catch (Exception e) {
e.printStackTrace();
}
return -1;
}
Android.mk
APP_ABI := all
APP_PLATFORM := android-15
Application.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := my-jni
LOCAL_SRC_FILES := my-jni.c</