是否可以以编程方式为Localytics设置应用密钥?从集成指南(https://support.localytics.com/Android_SDK_integration)看来,您必须将其作为元数据在Manifest文件中设置。
<meta-data android:name="LOCALYTICS_APP_KEY" android:value="APP KEY FROM STEP 2"/>
从以下文章中,似乎无法动态设置Android元数据。 How to add metadata dynamically (Not in manifest but inside code)?
我希望能够根据Gradle buildType动态设置应用程序密钥,这样我就可以拥有一个发布应用程序密钥和一个调试应用程序密钥。
答案 0 :(得分:5)
您可以使用清单合并来支持您的构建类型(例如调试与发布)或您的产品风格(例如免费与付费)的不同应用密钥。
支持您的构建类型的不同应用程序密钥:
src/debug/AndroidManifest.xml
和src/release/AndroidManifest.xml
。src/main/AndroidManifest.xml
。src/debug/AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.app" >
<application>
<meta-data
android:name="LOCALYTICS_APP_KEY"
android:value="DEBUG_APP_KEY" />
</application>
</manifest>
src/release/AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.app" >
<application>
<meta-data
android:name="LOCALYTICS_APP_KEY"
android:value="RELEASE_APP_KEY" />
</application>
</manifest>
根据您的产品口味,对于不同的应用键,只需将上面的debug
和release
替换为您的产品口味名称。
答案 1 :(得分:2)
There is an override on Localytics.integrate that takes an api key.
Localytics.integrate(this, "API_KEY")
答案 2 :(得分:0)
如果您使用的是autoIntegrate
,请使用以下API作为第一个参数。
Localytics.autoIntegrate(this, "API_KEY");