在初始化application的时候由于需要初始化ActiveAndroid.initialize(),初始化的速度大概需要2-3秒,特别慢。
查找资料:
https://blog.csdn.net/spareyaya/article/details/51714873
问题产生原因:
ActiveAndroid在初始化的时候会去扫描数据表对应的model类,因此耗时很长。
解决办法:
将model类显式的申明在manifest配置,所有配置如下:
<meta-data
android:name="AA_DB_NAME"
android:value="slifewallet_db" />
<meta-data
android:name="AA_DB_VERSION"
android:value="2" />
<meta-data
android:name="AA_MODELS"
android:value="io.slife.wallet.dbtables.WalletTable,io.slife.wallet.dbtables.TokenTable,io.slife.wallet.wallet.table.CoinItemTable" />
此时,重新检测启动速度,ActiveAndroid.initialize()的执行时间约在33毫秒左右,提升了100倍速度!
网友评论