草庐IT

EXTRA_KEY

全部标签

android - 在 Android 应用程序中存储 key 的最佳位置是什么?

在应用程序代码中存储APIkey、数据库加密key等的最佳位置是什么,这样任何人都无法通过反编译代码获得它?我使用混淆器来混淆代码,但它不适用于字符串。 最佳答案 无法将它们存储在应用程序中。该应用程序可以在修改后的设备上反编译或执行,从而提供对应用程序内存的更多访问权限,或者攻击者可以修改该应用程序以添加额外的网络或存储/数据库流量等日志记录。为了向服务器进行身份验证,您的应用可能应该通过交换用户输入的凭据来获取此类身份验证token或通过从AccountManager或类似API获取这些身份验证token来获取身份验证token

Android KeyStore - key 并不总是存在

在我的应用程序中,我们使用RSAkey,该应用程序在首次启动时生成(使用androidkeystore)。由于未知原因,该应用未能从某些设备上的keystore中检索到key。我检查了日志,但找不到此错误与特定操作系统版本或特定设备型号之间的关联。此外,我确信该应用程序仅在创建key后才尝试读取它。所以-我的问题是:据我所知,androidkeystore应该是持久的。什么会导致这样的错误?下面是相关的代码示例。key生成:try{KeyPairGeneratorgenerator=KeyPairGenerator.getInstance("RSA",keyStore.getProvi

Intent "Extra"键与 Bundle 键的 Android 命名约定

我目前正在学习如何在Android中编程。我读到Extras的键(放在Intent中)通常以单词“EXTRA”开头,例如:publicstaticfinalStringEXTRA_USER_CHEATED="someuniquestring";而要保存在Bundle中的对象的键通常以“KEY”一词开头,例如:publicstaticfinalStringKEY_USER_CHEATED="someotheruniquestring";如果我有一个变量需要作为Extra传递给另一个Activity,但我还需要能够将相同的变量保存在Activity的Bundle中怎么办?我应该有两个变量键

java - 我可以检查两个 Android 应用程序是否使用相同的 key 签名吗?

我想检查AppA和AppB的签名是否相同。我想在AppA中进行检查并根据比较结果调用方法。publicbooleancompareAppSignatures(){Signature[]sigA=getPackageManager().getPackageInfo(getPackageName(),PackageManager.GET_SIGNATURES).signatures;Signature[]sigB=getPackageManager().getPackageInfo("",PackageManager.GET_SIGNATURES).signatures;returnArr

android - PBKDF2WithHmacSHA1 key 生成在 Android 上花费的时间太长

我想使用PBKDF2WithHmacSHA1生成key,但在android上计算时间太长。我在iOS上使用相同数量的迭代和普通加密,大约需要6秒,而在Android上需要100秒。代码如下:publicstaticStringgenerateStorngPasswordHash(Stringpassword){try{char[]chars=password.toCharArray();byte[]salt=getSalt();PBEKeySpecspec=newPBEKeySpec(chars,salt,1010101,32*8);SecretKeyFactoryskf=Secret

android - 通过 Intent.ACTION_SEND 共享文件时,Google 云端硬盘将文件名更改为 Intent.EXTRA_SUBJECT

我有以下代码通过Intent.ACTION_SEND共享文件。最后一行显示了一个选择器,以便用户可以选择合适的应用程序。当我选择电子邮件时,一切都很好,文件已附加到电子邮件中。另一方面,当我选择谷歌驱动器时,文件被上传到谷歌驱动器,但文件的名称被更改为“备份”,这是主题。也就是说,如果我调用shareBackup("/sdcard/001.mks"),则Google驱动器上的文件名是“Backup”而不是“001.mks”。我的代码有问题吗?publicvoidshareBackup(Stringpath){Stringto="YourEmail@somewhere.com";Stri

java - 尝试访问 EXTRA_ADDRESS_BOOK_INDEX 字段时出现 JNI 错误

我正在尝试访问EXTRA_ADDRESS_BOOK_INDEX使用JNI的常量:JNIEXPORTjintJNICALLJNI_OnLoad(JavaVM*vm,void*reserved){JNIEnv*env=nullptr;vm->GetEnv(reinterpret_cast(&env),JNI_VERSION_1_6);jclassclazz=env->FindClass("android/provider/ContactsContract$Data");jfieldIDfieldID=env->GetStaticFieldID(clazz,"EXTRA_ADDRESS_BO

java - 在 Android 中使用 KeyStore 存储 key

我正在使用KeyStore来保护我的私钥,但是当行:FileOutputStreamfos=ctx.openFileOutput("bs.keystore",Context.MODE_PRIVATE);被执行我有这个异常:'java.lang.NullPointerException'.我不明白问题出在哪里。代码:privateContextctx;publicDataSec(Contextctx){ctx=this.ctx;}publicvoidgenKey()throwsException{SecretKeykey=KeyGenerator.getInstance("AES").g

android - App转账和api key 问题

我在GooglePlay上有一个使用googlemapapiv1的应用程序,我想将我的应用程序转移到另一个帐户。问题是:谷歌不再为apimapv1生成key,正如谷歌文档中提到的那样,“每个谷歌地图AndroidAPIv1key都与特定的签名证书唯一关联。”。如果发生转移,我们的签名证书(keystore文件)在新帐户上是否仍然有效,是否允许新帐户使用当前的MapKeyAPIv1?目前不能切换到APIMAPv2。 最佳答案 IhaveanapponGooglePlayusinggooglemapapiv1andIwouldliket

android - Xamarin Studio 创建的磁盘上的 android 签名 key 在哪里?

我正在使用我在XamarinStudio中创建的key进行发布。该key在磁盘上的什么位置,以便我可以对其进行备份? 最佳答案 window在C:\Users\USERNAME\AppData\Local\Xamarin\MonoforAndroid\debug.keystoreOSX在~/.local/share/Xamarin/MonoforAndroid/debug.keystorehttp://developer.xamarin.com/guides/android/deployment,_testing,_and_metr