![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
文章平均质量分 51
_空指针_
快乐工作快乐玩
展开
-
如何将uri转成真实路径地址
[code="java"] /** * 获取文件选择器选中的文件路径 * * @param context * @param uri * @return */ public static String getPath(Context context, Uri uri) { String...原创 2018-10-15 17:38:35 · 1367 阅读 · 0 评论 -
【转】解决Android与服务器交互大容量数据问题
对于目前的状况来说,移动终端的网络状况没有PC网络状况那么理想。在一个Android应用中,如果需要接收来自服务器的大容量数据,那么就不得不考虑客户的流量问题。本文根据笔者的一个项目实战经验出发,解决大容量数据的交互问题,解决数据大小会根据实际情况动态切换问题(服务器动态选择是否要压缩数据,客户端动态解析数据是否是被压缩的),还有数据交互的编码问题。 解决数据过大的问题,最直观...原创 2013-09-02 14:40:04 · 92 阅读 · 0 评论 -
touch事件分发处理流程
[b][i]Touch 事件发生时 Activity 的 dispatchTouchEvent(MotionEvent ev) 方法会以隧道方式(从根元素依次往下传递直到最内层子元素或在中间某一元素中由于某一条件停止传递)将事件传递给最外层 View 的 dispatchTouchEvent(MotionEvent ev) 方法,并由该 View 的 dispatchTouchEvent(Moti...原创 2014-05-23 09:44:33 · 127 阅读 · 0 评论 -
修改标准GSensor相关,是重力感应游戏在平板都可以玩
为什么有些重力感应的游戏不能玩,有些可以玩,主要原因在于framework对于数据的处理只有一套标准,而手机和平板在这方面是有区别的,一般游戏都是针对手机开发,在平板上就会出现问题(左右摆动不起作用,前后起作用),下面我们主要看看如何修改这个问题。主要涉及文件在:SystemSensorManager.java中在函数onSensorChangedLocked中,需要修改设置的值如:...原创 2013-12-21 11:27:52 · 236 阅读 · 0 评论 -
android Preference相关样式修改
首先,Preference相关的东西都是以list的形式展现给大家的,所以,修改的样式一般可以分为2类:1.listitem背景修改。2.listitem具体view修改。我们分别对下面四种情况进行分析。1.activity继承自PreferenceActivity1).可以通过getListView()来获取listview对象,然后设置listview的相关属性。如4.0.3的设置应用...原创 2012-10-12 16:43:53 · 879 阅读 · 0 评论 -
android3.0及以上动画分析
ValueAnimator简介ValueAnimator属于property animation[img]http://dl.iteye.com/upload/attachment/0064/8690/d3be19cd-dae6-3bb2-943b-8a6476abd2b9.bmp[/img]Propertity Animation类似于 tween动画,区别在于ValueA...原创 2012-09-22 13:51:57 · 97 阅读 · 0 评论 -
反锯齿办法
在Android中,目前,我知道有两种出现锯齿的情况。 ① 当我们用Canvas绘制位图的时候,如果对位图进行了选择,则位图会出现锯齿。② 在用View的RotateAnimation做动画时候,如果View当中包含有大量的图形,也会出现锯齿。我们分别以这两种情况加以考虑。 ◆ 用Canvas绘制位的的情况。在用Canvas绘制位图时,一般地,我们使用drawBitmap函数家族,在这...原创 2012-12-28 14:14:21 · 185 阅读 · 0 评论 -
开关机动画及图片修改
开机动画开关system/core/rootdir/etc/init.goldfish.sh setprop debug.sf.nobootanimation 0mediatek\custom\taibo13_gb\system\bootanim\bootanimationmediatek\custom\taibo13_gb\system\bootanim\shutani...原创 2012-09-07 15:25:06 · 1104 阅读 · 0 评论 -
android线程的那些事
有些时候Thread里面更新UI是可以成功的。比如在Activity里面的Oncreate里面调用thread.start(),在线程中更新UI,可能会成功。这是因为不能在子线程中更新UI的异常信息是在viewrootImpl里面抛出来的,但是viewrootImpl的创建是在Activity的onResume函数里面。所以会出现上述现象。如果再Thrad.start之前sleep几百毫秒,或...原创 2012-11-17 15:36:27 · 100 阅读 · 0 评论 -
图像缩放和旋转
在绘制bitmap时,都会涉及一个参数矩阵Matrix,Matrix(矩阵)类,当在现有位图对象上进行绘制或从另一个位图对象创建某个位图对象时,可以使用该类。这个类使得我们能够在一幅图像上应用空间转换。这种类型的转换可以是旋转、裁剪、缩放或者更改图像的坐标空间。Matrix 类以9 个数字的数组表示转换。在许多情况下,这些数字可以由一个公式生成,该公式在数学上表示应该发生的转换。例如,对于...原创 2012-11-16 11:20:48 · 182 阅读 · 0 评论 -
[转载]Android大图裁剪解决办法
cropimage可以调用手机自带的com.android.camera.action.CROP这个Intent进行裁剪通过设置输出大小可以得到图片的大小:intent.putExtra(“outputX”, outputX);intent.putExtra(“outputY”, outputY);但是当outputX或者outputY 大小设置为320以上的时候,会发现完...原创 2013-04-25 14:29:54 · 121 阅读 · 0 评论 -
[转]隐藏虚拟按键(导航栏)的方法
Controls for system UI visibilitySince the early days of Android, the system has managed a UI component known as the status bar, which resides at the top of handset devices to deliver information...原创 2013-10-12 10:35:25 · 240 阅读 · 0 评论 -
android资源适配解析及资源适配优先级规则
1.sw的值是怎么计算得来的sw = width * DisplayMetrics.DENSITY_DEFAULT / densityDPIwidth是指屏幕的宽度DisplayMetrics.DENSITY_DEFAULT是指google的标准值,一般是160densityDPI是指屏幕密度(每寸像素数)计算方法如下:[code="java"]D...2013-10-12 12:41:06 · 843 阅读 · 0 评论 -
备用网址记录
各种开源下载http://www.mvnjar.com/ 下载jarhttp://maven.outofmemory.cn/ 下载各种Jar和源码网址原创 2018-01-08 11:05:49 · 1066 阅读 · 0 评论 -
Android本地APP集成Mui框架
2.如何在安卓原生APP中使用MUI框架2.1资源准备1.需要去首先从官网http://www.dcloud.io/ 下载HBuilder及其他的开发工具(eclipse或者Android studio)2.到http://ask.dcloud.net.cn/article/103 下载HBuilder离线打包Android版SDK2.2项目集成1. 用Android Stud...原创 2016-01-26 14:41:56 · 921 阅读 · 0 评论 -
android中touch事件,click事件,longclick事件分析
针对屏幕上的一个View控件,Android如何区分应当触发onTouchEvent,还是onClick,亦或是onLongClick事件?在Android中,一次用户操作可以被不同的View按次序分别处理,并将完全响应了用户一次UI操作称之为消费了该事件(consume),那么Android是按什么次序将事件传递的呢?又在什么情况下判定为消费了该事件? 搞清楚这些问题对...原创 2016-08-03 15:51:17 · 1118 阅读 · 0 评论 -
Android 快速开发系列 打造万能的ListView GridView 适配器
前往http://blog.csdn.net/lmj623565791/article/details/38902805/查看原创 2016-06-27 17:21:59 · 106 阅读 · 0 评论 -
android中的Handler和AsyncTask如何防止内存泄露
Handler泄露的关键点有两个: 1). 内部类 2). 生命周期和Activity不一定一致 第一点,Handler使用的比较多,经常需要在Activity中创建内部类,所以这种场景还是很多的。 内部类持有外部类Activity的引用,当Handler对象有Message在排队,则无法释放,进而导致Activity对象不能释放。 ...原创 2016-06-13 13:55:32 · 164 阅读 · 0 评论 -
[转]android shape的使用
shape用于设定形状,可以在selector,layout等里面使用,有6个子标签,各属性如下:[code="java"] [/code]填充:设置填充...原创 2014-10-13 13:30:00 · 107 阅读 · 0 评论 -
[转载]SharedPreferences 存储java对象,很实用
public void putObject(String key , Object obj){ ByteArrayOutputStream bos = null; ObjectOutputStream oos = null; try { ...原创 2016-04-14 16:36:02 · 226 阅读 · 0 评论 -
Android与设计模式浅谈
Android作为新一代的操作系统,集合着Google多少工程师的智慧结晶。各种新技术,老技术,在Android系统框架中得到了最完美的体现。 在以前做Web开发时就感觉什么SSH框架简直太棒了,写出这些框架的大牛太厉害了。里面的IoC思想真的令人心动。值得高兴的时,这些东西也都在Android中加以实现。下面我们聊聊对Ioc的理解。IoC主要分为2步: 1.控制反转-反向控...原创 2015-04-27 10:42:39 · 132 阅读 · 0 评论 -
从网页启动Activity
正好Android SDK 给我们提供了解决方案,在网页中点击某个链接时,会匹配到Activity所配置的隐式Intent(配置在Manifest文件中)。知道这个我们就好办了。第一步:在Manifest文件中给TestActivity配置一个隐式Intent[code="java"] [/code]...原创 2015-03-24 11:28:04 · 153 阅读 · 0 评论 -
Android模拟按键
如果想要实现类似iphone的悬浮框按钮,那就必须知道如何去模拟真实按键,然后才能将按键功能与悬浮框按钮联系起来,下面就详细说明一下具体的模拟实现:实现方式有两种,一种是通过Command命令方式,另外一种是通过Instrumentation方式。一 Command命令方式:[code="java"] try{ String keyCommand = "input key...2013-10-14 14:27:38 · 161 阅读 · 0 评论 -
AmS简介
ActivityManagerService主要包含三个功能:Activity管理,进程管理(activity在退出时,其所在的进程不会被停止,这样可以提高下次的启动速度,只有系统内存不够时,才会被自动杀死),内存管理主要包含重要数据:都是形如XXXRecord的数据,如ProcessRecord(apk进程管理),HistoryRecord(activity管理,本身是Binder,...原创 2012-03-23 15:41:49 · 377 阅读 · 0 评论 -
Binder机制分析【四】-Binder系统组件概览
Binder系统组件由第一章知道,Binder系统由3部分组成,client,server,binder驱动。其中server由两部分组成:server和Service Manager,因为Service Manager是一种特殊的server,所以也将其划分到了server中,Service Manager是一个守护进程,用来管理Server,并向Client提供查询Server接口的能...原创 2012-03-23 15:39:32 · 157 阅读 · 0 评论 -
Binder机制分析【三】-service绑定Binder
本章来主要分析Service是如何绑定到Binder的我们从activity调用bindService开始Activity.bindService -> ContextWrapper.bindService -> ContextImpl.bindService -> ActivityManagerNative.getDefault().bindService(ActivityM...原创 2012-03-16 16:29:06 · 164 阅读 · 0 评论 -
android退出所有Activity并且不弹出对话框实现
这种实现很简单,主要步骤如下:1.定义自己的Exception类,该类继承自UncaughtExceptionHandler,复习其方法uncaughtException,在该方法实现强制退出2.在你的应用中设置自定义异常exception = new MyUncaughtExceptionHandler(this); Thread.setDefaultUncaugh...原创 2012-05-05 16:26:28 · 127 阅读 · 0 评论 -
Android网络编程之Http通信
Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序。以下是本人在学习中的总结与归纳。1. HttpURLConnection接口 首先需要明确的是,Http通信中的POST和GET请求方式的不同。GET可以获得静态页面,也可以把参数放在URL字符串后面,传递给服务器。而POST方法的参数是放在Http请求中。因此,在编程之前,应...原创 2012-01-19 11:01:21 · 78 阅读 · 0 评论 -
android 解析json数据格式
json数据格式解析我自己分为两种;一种是普通的,一种是带有数组形式的; 普通形式的:服务器端返回的json数据格式如下:{"userbean":{"Uid":"100196","Showname":"\u75af\u72c2\u7684\u7334\u5b50","Avtar":null,"State":1}}分析代码如下:原创 2012-01-18 16:19:00 · 103 阅读 · 0 评论 -
Android遇到内存溢出(Out Of Memory)BUG的经验与解决方法
经过信息检索,我弄清了这样一个事实:Android虚拟机不允许单个程序中的Bitmap占用超过8M的内存,一旦超过了就会报错,而报的错正是bitmap size exceeds VM budget.现在好了,这一切看似如此简单:要想程序的bitmap小于8M,要么就在用了bitmap后立即回收这部分内存,要么就压缩图片的大小啊。第一种方法--及时回收bitmap内存:一...原创 2012-01-18 15:26:59 · 216 阅读 · 0 评论 -
Thread,Looper,Handler,Message,MessageQueue,MessagePool之间的关系
[img]http://dl.iteye.com/upload/attachment/0062/2654/8ff37ab5-f202-38f1-bd31-e474f55dde5a.jpg[/img]多线程与异步Main Thread & UI Thread当程序启动的时候Android会自动创建一个进程和一个线程,这个线程负责界面更新,收集系统事件和用户的操作事件等并分配给对应的组件,...原创 2012-01-18 14:02:38 · 144 阅读 · 0 评论 -
android 相关研究文档
一共包含如下文档:http处理.docimageview研究文档.docmenu原理.docToast使用注意点.docTouch事件派发过程详解.docview研究文档.doc如何完成自定义控件.docActivity启动流程.doc...原创 2012-01-17 15:58:45 · 70 阅读 · 0 评论 -
对ContentProvider中getType(Uri uri)和android.intent.category.DEFAULT的理解
学习了ContentProvider,想做个通讯录,结果在Intent和getType(Uri uri)上卡住了,经过查找资料发现了问题的所在。在这里解释下getType(Uri uri)何时被调用,和android.intent.category.DEFAULT 的理解。 我们需要什么时候加android.intent.category.DEFAULT呢?1、要弄清楚这个...原创 2012-01-03 10:20:10 · 120 阅读 · 0 评论 -
android使用技巧知识
[code="java"] EditText ed = new EditText(this); Editable eb = ed.getEditableText(); //获取光标位置 int position = ed.getSelectionStart(); //指定位置插入字...2010-12-02 20:25:55 · 131 阅读 · 0 评论 -
android常见问题解惑
1 在ui中使用scrollview之后,如果复写activity的onkeydown或onkeyup事件,若果焦点在scrollview上,则这两个事件是不触发的,对于ontouch事件也是一样。解决问题的方法是scrollview.setOnKeyListener();2. mediaplay在使用时,添加的一些事件诸如setOnCompletionListener等,...原创 2011-07-08 17:26:37 · 126 阅读 · 0 评论 -
android aidl进程间通信
1.在应用1中定义自己的aidl文件。[code="java"]package com.test.eric.AIDL; interface testAIDL { void fun(); } [/code] 2.在应用1中写service,实现aidl接口,复写onbind方法。[code="java"]public class ...原创 2011-06-01 15:42:53 · 91 阅读 · 0 评论 -
Activity.managedQuery()分析
Activity.managedQuery()获取一个包含指定数据的 Cursor 对象,并由 Activity 来接管这个 Cursor 的生命周期。首先该函数通过调用 getContentResolver().query(uri, projection, selection, selectionArgs, sortOrder) 获取一个包含指定数据(由 query 方法的参数指定)的 ...原创 2012-05-16 16:29:07 · 222 阅读 · 0 评论 -
判断联系人是否存在
联系人存储包括两个位置:SIM卡和手机上,在查找过程中要分别判断。手机上存储位置在/data/data/com/android.providers.contacts/databases。1 判断是否存储在手机上(CallDetailActivity)[code="java"]Uri personUri = null; Uri phone...原创 2012-05-18 13:53:08 · 331 阅读 · 0 评论 -
java和android 的DateFormat的具体格式介绍
[code="java"]//java DateFormatString help[] = { "To use this program, enter a time value", "in the top text field, and a SimpleDateFormat", "format specifier in the second ...原创 2012-07-13 18:21:36 · 165 阅读 · 0 评论 -
Binder机制分析【二】-Binder服务/客户端实现举例
前一章说了下Binder机制的实现分析,这章就主要通过实际的例子来看看,具体的服务端创建。一般而言,同一个进程里的沟通称之为短程沟通,进程间的沟通称之为远程沟通,短程沟通的效率远高于远程沟通,但是Android提供的Binder机制就提供了高效率的远程沟通。下面通过Activity与Service之间的沟通为例,列举出2种实现方式。例子一:通过直接继承Binder实现1. 实现Bind...原创 2012-03-09 13:30:36 · 188 阅读 · 0 评论