Android 开发过程中遇见的奇葩的bug

一、大图片OOM 当初是在黄页详情页使用imageload加载一个大图片。很OK的,压力测试的时候,会出现这样情况,不停快速打开关闭详情页,根据手机性能而定大约10_20次就出现了OOM(经分析,之前关闭的页面还没有来的机被CG回收。解决方案:当详情页关闭的时候收到回收)
//手动释放内存 多次点击详情也关闭会报OOM
     private void releaseImageView(ImageView imageView) {  
            Drawable d = imageView.getDrawable();  
            if (d != null)  
                d.setCallback(null);  
            imageView.setImageDrawable(null);  
            imageView.setBackgroundDrawable(null);  
        } 

二、上下文为空 经常出现在fragment界面,打开fragment界面切到后台,然后快速打开其他应用程序,手机上能打开的都打开。再回到这个fragment界面,就有可能出现上下文空指针(经分析,当内存紧张的时候系统回收了。解决方案:判断上下文为空就重新初始化一边就行)

三、数据库不存在 当执行查询的时候报表不存在。(我们这边一直无法复现,小米测试力度比较大我们这边一般就几台机器测试,小米会有很多台,经分析就是在压力测试的时候,正在建表的时候内存不足没有建立成功。 用事务来解决。之前还用过先把整个数据库删除再建,变相解决了 但是还会删除已经存入的信息。)


四、使用jni生成c的时候不成功:无法访问android.app.Activity 找不到android.app.Activity的类文件

【解决办法】

进入src目录,使用javah -d ../jni com.example.myhellojni.MainActivity 指令代替。

其中 -d:建立一个目录。


其中../jni :在上级目录的jni文件下生成头文件。

未完待续

你可能感兴趣的:(Java,Android)