我一直在开发这个应用程序,对吧?这是一个涉及所有这些不同 API 的旅程 - Map API 密钥、AdMob 内容和 Firebase 位。但问题在于:当我进行开发时,我需要使用这些测试 API 并将 Firebase 排除在外,这意味着需要进行大量的手动调整。然后,当需要推出最终版本时,我必须将所有内容切换到生产 API,并再次手动将 Firebase 重新投入使用。老实说,这让我很恼火,因为有时我忘记删除那些测试 API,然后就会出现混乱。作为一个对 Android 开发还很陌生的人,我确实可以使用一些关于如何简化此过程的技巧。有人给点建议吗?
以下是我如何管理 Admob ID 的示例:
<!-- production ids -->
<string name="ad_unit_banner">ca-app-45s4d54</string>
<string name="ad_unit_interstitial">ca-app-45s4d54</string>
<!-- Test Ids -->
<string name="ad_unit_banner">ca-56sd556s</string>
<string name="ad_unit_interstitial">ca-56sd556s</string>
现在在上面的代码中我手动注释了我不需要的内容。这只是为了让您了解我的代码目前有多混乱。
非常感谢!
您可以通过引入新的风格来在 gradle 脚本中进行分离,并为不同的输出风格使用相同的键和不同的值:
productFlavors {
develop {
dimension "develop"
applicationIdSuffix '.develope'
buildConfigField("String", "BASE_URL", "")
}
production {
buildConfigField("String", "BASE_URL", "")
}
}
您可以通过BuildConfig.BASE_URL在android代码中访问BASE_URL