編輯:關於Android編程
使用Android JNI 獲取應用簽名。
根據獲取的簽名來生成自己的密碼,這樣可以防止別人反編譯自己的源碼後查找密碼。
jstring Java_com_masonsdk_jni_JNIUtil_getPWD(JNIEnv* env, jobject thizz ,jobject thiz ){ jclass native_clazz = env->GetObjectClass(thiz); // 得到 getPackageManager 方法的 ID jmethodID methodID_func =env->GetMethodID(native_clazz,"getPackageManager", "()Landroid/content/pm/PackageManager;"); // 獲得應用包的管理器 jobject package_manager = env->CallObjectMethod(thiz, methodID_func); // 獲得 PackageManager 類 jclass pm_clazz = env->GetObjectClass(package_manager); // 得到 getPackageInfo 方法的 ID jmethodID methodID_pm = env->GetMethodID( pm_clazz, "getPackageInfo", "(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;"); //獲取包名 jmethodID methodID_packagename =env->GetMethodID(native_clazz,"getPackageName", "()Ljava/lang/String;"); jstring name_str = static_cast(env->CallObjectMethod(thiz, methodID_packagename)); // 獲得應用包的信息 jobject package_info = env->CallObjectMethod(package_manager, methodID_pm, name_str, 64);//env->NewStringUTF("com.example.contasdf") // 獲得 PackageInfo 類 jclass pi_clazz = env->GetObjectClass( package_info); // 獲得簽名數組屬性的 ID jfieldID fieldID_signatures = env->GetFieldID( pi_clazz, "signatures", "[Landroid/content/pm/Signature;"); // 得到簽名數組,待修改 jobject signatur = env->GetObjectField(package_info, fieldID_signatures); jobjectArray signatures = reinterpret_cast (signatur); // 得到簽名 jobject signature = env->GetObjectArrayElement(signatures, 0); // 獲得 Signature 類,待修改 jclass s_clazz = env->GetObjectClass(signature); // 得到 hashCode 方法的 ID jmethodID methodID_hc = env->GetMethodID(s_clazz, "hashCode", "()I"); // 獲得應用包的管理器,待修改 int hash_code = env->CallIntMethod(signature, methodID_hc); char str[100]; sprintf(str, "%u", hash_code); return env->NewStringUTF(str); }
https://github.com/mentor811/AndroidUltimateEncrypt
【 聲明:版權所有,歡迎轉載,請勿用於商業用途。 --天盟】
關於實現ListView下拉刷新和加載更多的實現,我想網上一搜就一堆。不過我就沒發現比較實用的,要不就是實現起來太復雜,要不就是不健全的。因為小巫近期要開發新浪微博客戶端
本文實例講述了Android簡單實現自定義流式布局的方法。分享給大家供大家參考,具體如下:首先來看一下 手淘HD - 商品詳情 - 選擇商品屬性 頁面的UI商品有很多尺碼
一、問題概述 在android開發中,經常會使用到文件下載的功能,比如app版本更新等。在api level 9之後,android系統為我們提供了DownLoa
其實說到沉浸式狀態欄這個名字我也是感到很無奈,真不知道這種叫法是誰先發起的。因為Android官方從來沒有給出過沉浸式狀態欄這樣的命名,只有沉浸式模式(Imm