在我的 apk 中保留 admob 广告单元 ID 是否不安全?

Is it insecure to keep admob ad-unit id in my apk?

我已经在我的应用程序中集成了 admob。对于每个不同的广告,我使用了不同的广告单元 ID。为了获取这些广告单元 ID,我将这些 ID 保存在我的 string.xml 文件中。如果有人反编译我的 apk,他可以轻松获得这些 ID。所以我的问题是,任何人都可以用这些 ID 做一些恶意的事情吗?我应该将这些密钥保存在服务器中并在需要时获取吗?

通过您的 AD-unit-ID 进行恶意攻击的可能性很小。但是,有人仍然可以使用您的 APP-ID 和 AD-unit-ID 生成无效流量,从而导致您的 AdMob 帐户被暂停。

根据this document,您可以将这些 ID 放入您的 build.gradle 文件中,并自动切换您的测试 AD-ID / 真实 AD-通过选择不同构建类型的 ID。

这是我在 app/build.gradle

中的代码
buildTypes {
    debug {
        applicationIdSuffix ".debug"
        resValue "string", "app_name", "@string/app_name_debug"
        resValue "string", "ad_banner_id",   "ca-app-pub-3940256099942544/6300978111"  // test unit id
        resValue "string", "ad_rewarded_id", "ca-app-pub-3940256099942544/5224354917"  // test unit id
    }

    release {
        resValue "string", "app_name", "@string/app_name_release"
        resValue "string", "ad_banner_id",   "ca-app-pub-***/***"  // real ad unit id
        resValue "string", "ad_rewarded_id", "ca-app-pub-***/***"  // real ad unit id
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        zipAlignEnabled true
    }
}