随笔分类 - android相关问题处理
摘要:这个bug,是google自带的问题。 和见到的诸多android的疑难问题一样,这又是一个可以归类为 多线程同步/状态机 问题。问题处在NuPlayer的异步消息的handle中,现象和原因不细说了,被此BUG纠结的头大的,应该一看就明白。重现步骤:反复进入、退出html5的流媒体播放 (浏览器的...
阅读全文
摘要:1. Log信息级别Log.v- VERBOSE : 黑色Log.d- DEBUG : 蓝色Log.i- INFO : 绿色Log.w- WARN : 橙色Log.e- ERROR : 红色从上而下级别逐次增加2. 过滤:指定标签,指定级别adb logcat [TAG:LEVEL ][TAG:LE...
阅读全文
摘要:后续计划性能优化——诊断及工具(目前只有关于TraceView的介绍)、性能优化——内存篇、性能优化——JNI篇,性能优化——电量篇。2、何为性能问题在性能测试中存在两个概念:(1). 响应时间指从用户操作开始到系统给用户以正确反馈的时间。一般包括逻辑处理时间 + 网络传输时间 + 展现时间。对于非...
阅读全文
摘要:一个网络请求可以简单分为连接服务器 -> 获取数据两个部分。其中连接服务器前还包括 DNS 解析的过程;获取数据后可能会对数据进行缓存。一、连接服务器优化策略1. 不用域名,用 IP 直连省去 DNS 解析过程,DNS 全名 Domain Name System,解析意指根据域名得到其对应的 IP ...
阅读全文
摘要:1、降低执行时间这部分包括:缓存、数据存储优化、算法优化、JNI、逻辑优化、需求优化几种优化方式。(1). 缓存缓存主要包括对象缓存、IO缓存、网络缓存、DB缓存,对象缓存能减少内存的分配,IO缓存减少磁盘的读写次数,网络缓存减少网络传输,DB缓存较少Database的访问次数。在内存、文件、数据库...
阅读全文
摘要:1、抽象布局标签(1) 标签include标签常用于将布局中的公共部分提取出来供其他layout共用,以实现布局模块化,这在布局编写方便提供了大大的便利。下面以在一个布局main.xml中用include引入另一个布局foot.xml为例。main.mxl代码如下:Java1234567891011...
阅读全文
摘要:1、索引简单的说,索引就像书本的目录,目录可以快速找到所在页数,数据库中索引可以帮助快速找到数据,而不用全表扫描,合适的索引可以大大提高数据库查询的效率。(1). 优点大大加快了数据库检索的速度,包括对单表查询、连表查询、分组查询、排序查询。经常是一到两个数量级的性能提升,且随着数据数量级增长。(2...
阅读全文
摘要:一、性能瓶颈点整个页面主要由6个Page的ViewPager,每个Page为一个GridView,GridView一屏大概显示4*4的item信息(本文最后有附图)。由于网络数据获取较多且随时需要保持页面内app下载进度及状态,所以出现以下性能问题a. ViewPager左右滑动明显卡顿b. Gri...
阅读全文
摘要:Android性能检测traceview的使用方法1. 把android-sdk-windows\tools路径加到Path当中2. 编写测试代码:[java]view plaincopypackagecom.wwj.traceview;importjava.util.ArrayList;impor...
阅读全文
摘要:问题如何获取一个控件的长和高,相信很多朋友第一眼看见这个问题都会觉得很简单,直接在onCreate里面调用getWidth、getMeasuredWidth不就可以获得了吗,但是,事实上是并没有简单的,不信的话,你可以去试一下,在onCreate里面,你是无法获得长宽值的,始终为0。原因这是为什么呢...
阅读全文
摘要:根据Android的层次结构,性能优化也是分层次进行的,本文会分别对Application、Framework、Native、Kernel各层做总结,每层主要会从性能优化的基本思想、优化技巧、优化工具几个方面进行说明。第一章Android应用性能优化(概述) 应用程序的性能问题是最明显、最容易体现...
阅读全文
摘要:Activity之间传数据时,为了避免麻烦,往往会将一些值封装成对象,然后将整个对象传递过去。传对象的时候有两种情况,一种是实现Parcelable接口,一种是实现Serializable接口。0、解释两种接口:1)实现Serializable接口是JavaSE本身就支持的。2)Parcelable...
阅读全文
摘要:解决方法:在拨打电话界面,录入*#*#2846579#*#*自动进入开发界面菜单,进入第一个,选择开启logcat。
阅读全文
摘要:cocos2d-x 打 android 包时要修改 Android.mk 文件,但每次修改很麻烦,如果源文件很多的话就坑死了,也可以写一个脚本来自动生成这个文件,但每次还要重新生成一下,将其修改下面的的样子可以一劳永逸原来的:[plain]view plaincopyLOCAL_PATH:=$(ca...
阅读全文
摘要:导入到Eclipse中后选择了相应的API后,红叉的项目错误没有了。 工程列表也无任何错误了。但出现了这样的提示框错误说明的是.classpath这个环境文件不能写。随后,查看工程文件主目录下的.classpath文件、.project文件的属性,发现两者属性为隐藏,去掉隐藏属性后,此问题解决。同样...
阅读全文
摘要:更新Android SDK,居然失败了三次。1.第一次失败出现Failed to fetch URL错误提示Failed to fetch URL https://dl-ssl.google.com/android/repository/repository-6.xml, reason: Conne...
阅读全文
摘要:有些时候我们使用Service的时需要采用隐私启动的方式,但是Android 5.0一出来后,其中有个特性就是Service Intentmust be explitict,也就是说从Lollipop开始,service服务必须采用显示方式启动。而android源码是这样写的(源码位置:sdk/so...
阅读全文
摘要:打包时报如下错误:Export aborted because fatal lint errors were found. These are listed in the Lint View. Either fix these before running Export again,or turn ...
阅读全文
摘要:我建立了两个project。一个是activity 的 ,一个是service 的。在进行两个project通信时,应该有以下几点注意:1.在activity project中引入service project中aidl文件。注意引入后的aidl文件包名应该和service中aidl文件包名保持一致...
阅读全文
摘要:最近在做一个播放器的小例子,中途遇到 了这个错:Attempt to call getDuration without a valid mediaplayer解决参考方案如下:一是如果mediaPlayer对象为null,那么在执行这个方法的时候会报异常二是在mediaPlayer对象为不可用状态的...
阅读全文