安卓的android meta data值获取的坑

今天在安卓的meta data里读取一个长数字串的时候,发现一个坑,用普通的方法

applicationInfo.metaData.get(key)+""

读出来的数字串,有错,后来发现这原来是一个很典型的问题,参考贴: 

https://my.oschina.net/u/990728/blog/673959

方法一:

<meta-data
    android:name="appkey"
    android:value="\ 1234567890" />

方法二:

使用resources属性通过getInt获取资源id,再获取资源id对应的值,这种方式可扩展性很强,可以获取所有资源而不只是string,形如

<meta-data
    android:name="appkey"
    android:resource="@string/AppKey" />

在strings.xml中定义AppKey的值为

<string name="AppKey">1234567890</string>

相关推荐