当前编译的sdk版本是27,手上有2个安卓机:4.4和8.0的。
自己新建了一个类,public class EasyBle extends Observable {
然后用老api在安卓4.4的真机上跑没问题。
把5.0以后的API加上去后,我还没调用呢,创建这个类的单实例时就崩溃了,提示:
Unable to find class....
但是在安卓8.0上就没事。
如下图:这是什么情况???
自己新建了一个类,public class EasyBle extends Observable {
然后用老api在安卓4.4的真机上跑没问题。
把5.0以后的API加上去后,我还没调用呢,创建这个类的单实例时就崩溃了,提示:
Unable to find class....
但是在安卓8.0上就没事。
如下图:这是什么情况???
解决方案 »
- 请教如何通过代码启动关闭GPRS?
- 设置suid及文件所有者root,apk通过exec执行此程序时为何euid不是0还是apk的uid呀?急急急~
- 菜鸟2帖
- 用拖拽生成的ui代碼是不是錯了
- 安装sdk出错 java not found in your path
- 可不可直接调用android自带的txt阅读器?
- re-parented什么意思
- 用android的模拟器下载的东西存在哪里
- lbs计算一点附近点的问题
- jni里面fork出来的子进程阻塞了,导致主程序apk退出的时候调用System.exit(0);会卡死
- android studio cmake 编译第三方源码,提示h文件找不到
- 求大神帮解答 为什么打电话时总是强制退出
将 multiDexEnabled 设置为 true
这些不好使,因为我有别人写的另一个app没有搞这个选项。
最好定义方法,在使用的时候调用,例如private Callback getV4(){
return ……;
}private Callback getV5(){
return ……;
}if(5.0以上版本){
使用getV5
}else {
使用getV4
}
@Override
protecte void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(Build.VERSION.SDK_INT<16){
Callback1 c1=new Callback1(){
...
};
xxx.setC1(c1);
}else if (Build.VERSION.SDK_INT<21){
Callback1 c2=new Callback1(){
...
};
xxx.setC2(c2);
}else {
Callback1 c3=new Callback1(){
...
};
xxx.setC3(c3);
}
}
if(Build.VERSION.SDK_INT<16){
Callback1 c1=new Callback1(){
...
};
xxx.setC1(c1);
}else if (Build.VERSION.SDK_INT<21){
Callback2 c2=new Callback2(){
...
};
xxx.setC2(c2);
}else {
Callback3 c3=new Callback3(){
...
};
xxx.setC3(c3);
}