在集成腾讯官方的小直播源码中发现的问题
首先是android studio编译中中gradle不能下载gson等文件,需要用jcenter()把原来的maven注掉,或者在ProjectStructure中设置Library Repository设置mavenCentral,
repositories {
jcenter()
// maven {
// url "http://maven.oa.com/nexus/content/groups/androidbuild"
// }
}
或者app.build添加
repositories {
mavenCentral()
}
之后又出现过编码错误
参考文章>https://my.oschina.net/u/1455799/blog/339139
需要用Notepad++工具改成UTF-8无Bom格式
编译成功后,我就拿了我的魅族(Android6.0)测试,发现运行时出现了一大堆报错,如下:
Error
(128, 56) 错误: 找不到符号
符号: 方法 getApplicationContext()
位置: 类 TCApplication
md,在同事的Android5.0的手机上运行就没有问题啊,
然后我发现了罪魁祸首:MultiDexApplication
这个multidex类,这个是用来在Android API21以下 使用,由于64K限制,想要在api21以下版本用更多的方法就要使用到multidex,
而到了,API21以上的版本,虚拟机改成了ART,就不用考虑这个问题了,
修改的方法是:TCApplication 直接继承 Application,不再继承MultiDexApplication,问题轻松解决了~