首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从APK反编译中保护Fabric API密钥?

如何从APK反编译中保护Fabric API密钥?
EN

Stack Overflow用户
提问于 2018-09-20 12:46:47
回答 2查看 2.8K关注 0票数 3

反编译我的安卓应用程序APK文件时,我在清单文件中找到了fabric ApiKey密钥。如何从APK反编译中保护Fabric API密钥?

我已经完成了以下代码更改,以便从清单文件中隐藏Fabric API密钥。但在APK反编译之后,它仍然是可见的。

我加了我的fabric API键

FabricAPIKey=0123456789ABCDEF012345123456789ABCDEF012 in gradle.properties.

在build.gradle(模块)中

代码语言:javascript
复制
...........
def FABRIC_API_ID = FabricAPIKey

    .....
    buildTypes {
            debug {
                ..........
                manifestPlaceholders  = [//this is used for defining the variable for manifest file
                    FABRIC_API_KEY:FABRIC_API_ID
                 ]
            }
    release{ ..........
                manifestPlaceholders  = [//this is used for defining the variable for manifest file
                    FABRIC_API_KEY:FABRIC_API_ID
                 ]
            }

在AndroidManifest.xml中

代码语言:javascript
复制
<meta-data
            android:name="io.fabric.ApiKey"
            android:value="${FABRIC_API_KEY}" />
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-20 14:11:01

布艺公司的迈克。Seva的观点应该得到很好的注意--“只要有一个调试器和足够的时间,一个有足够动力的黑客最终就能找到它”。

如果需要,可以将API键放置在fabric.properties文件中并构建秘密。将api键从android清单中复制出来,并删除以下一行:<meta-data android:name="com.crashlytics.ApiKey" android:value="YOUR_API_KEY_HERE"/>

然后创建一个名为fabric.properties的文件,并将该文件夹放在模块的根目录中,该模块将crashlytics应用于其“build.gradle”中的fabric.properies文件add:apiKey=YOUR_API_KEY_HERE中。

完成后,刷新您的依赖项以引入更改:./gradlew clean --refresh-dependencies

票数 3
EN

Stack Overflow用户

发布于 2018-09-20 12:50:46

尝试将其保存在strings.xml中,并在这里引用。

那么清单将只显示int格式的资源id。

但是,如果您打开strings.xml文件,它将被检索。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52425510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档