自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(132)
  • 收藏
  • 关注

Android Test 简单总结

用Android studio可以很方便的完成代码的测试工作,比之前在Eclipse里面做测试方便多了,下面简单总结一下:一、创建测试目录结构:一般在工程根目录下创建androidTest文件夹,里面按照src包名结构创建目录,然后就可以创建测试文件了,如图:[img]http://dl2.iteye.com/upload/attachment/0115/8297/b4a8d3aa...

2016-03-15 10:47:00 1916

原创 Android常用shell指令收集

一、base cmd1、挂载文件系统:mount -o remount /dev/block/mtdblock0 /system2、拷贝文件:cp /storage/emulated/legacy/a.apk /system/app/a.apk3、启动指定APP:adb shell am start -n com.test.shellsample/com.test.shellsam...

2016-02-15 17:24:30 288

SoundPool使用总结

一、与MediaPlayer的对比:SoundPool适合短且对反应速度比较高的情况(游戏音效或按键声等),文件大小一般控制在几十K到几百K,最好不超过1M,可以与MediaPlayer同时播放,SoundPool也可以同时播放多个声音;最终编解码实现与MediaPlayer相同;MediaPlayer只能同时播放一个声音,加载文件有一定的时间,适合文件比较大,响应时间要是不是非常高的...

2015-10-09 11:32:22 1383

原创 Android代码混淆常见配置

项目发布之前混淆是必不可少的工作,混淆可以增加别人反编译阅读代码的难度,还可以缩小APK包。一、使用原理:见:ProGuard的作用、使用及bug分析(http://www.trinea.cn/android/proguard-use/);Proguard语法及常用proguard.cfg代码段(http://www.trinea.cn/android/proguard-gramm...

2015-09-06 15:40:01 414

Android蓝牙名词解释

Android蓝牙部分是很复杂的,也涉及很多名词,下面把我涉及到的一些常用名词做一个简单的解释:1、a2dp:蓝牙立体声,和蓝牙耳机听歌有关那些,另还有个avrcp--音频/视频远程控制配置文件,是用来听歌时暂停,上下歌曲选择的。Android only supports one connected Bluetooth A2dp device at a time. Each metho...

2015-07-30 11:14:37 266

原创 Android 蓝牙 UUID分类汇总

UUID是“Universally Unique Identifier”的简称,通用唯一识别码的意思。对于蓝牙设备,每个服务都有通用、独立、唯一的UUID与之对应。也就是说,在同一时间、同一地点,不可能有两个相同的UUID标识的不同服务。 在Android手机开发中不必过多考虑这点在这一点,因为几乎没有哪个手机会同时装两块蓝牙芯片。ServiceDiscoveryServerS...

2015-07-22 11:35:19 261

Android实现主动连接蓝牙耳机

在Android程序中可以实现自动扫描蓝牙、配对蓝牙、建立数据通道。蓝牙分不同类型,可以参考(http://gqdy365.iteye.com/admin/blogs/2229304)可以入下面方法获取蓝牙设备支持的类型:[code="java"]BluetoothDevice device;Arrays.toString(device.getUuids());[/code...

2015-07-15 11:14:02 925

Android 应用程序开关GPS

要在应用程序中操作GPS开关需要权限:[code="java"][/code]但在配置文件中添加此权限之后会报错,无法再eclipse里面正常编译,怎么办?1、方法一:将项目放到Android源码中编译;2、方法二:网上有人说clean一下,果然有效果;正常编译之后安装,添加权限了也报错,无法正常运行。研究之后发现还需要System共享权限,就是:[code...

2015-06-25 19:00:57 280

原创 (转)为什么第三方应用能早于System的app启动

Android应用的启动顺序网上有一大堆资料可以查阅了,这里就不细述了,这里不阐述ROM启动还有bootloader,软件启动的大致流程应该是启动kernel -> 运行servicemanager 把一些native的服务用命令启动起来(包括wifi, power, rild, surfaceflinger, mediaserver等等)-> 启动Dalivk中的第一个进程Zygote -> 启...

2015-06-18 10:52:06 150

原创 Android 数据库事务处理(转)

使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事...

2015-06-02 11:35:22 169

原创 Java synchronized关键字详解(转)

转载自:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。同步机制可以使用synchronized关键字实现。当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。当s...

2015-06-02 09:47:21 137

Android多Activity通用Title

先看一下效果图:[img]http://dl2.iteye.com/upload/attachment/0108/7371/2fee2a0e-4600-3532-b8cb-6b291d0c7f77.png[/img]要实现在每个页面显示相同的Title,能想到的办法有:1、创建单独的xml布局文件,在页面主配置文件中用include标签引入,如果要修改内容,可以再代码中获取Vi...

2015-05-20 10:12:25 273

Android led灯实现大致流程

led灯的控制在http://gqdy365.iteye.com/admin/blogs/2208344中写的方法是直接通过操作led设置来控制灯的开关。这样做的问题是未按Android标准结构实现,可能存在潜在的问题,后面分析的一下灯的源码,原来Android系统里面已经提供的相关的实现。Android系统标准的led可以通过发送通知来控制led灯,做法如下:[code="jav...

2015-05-11 18:07:48 1280

Android 应用程序发送shell命令

项目中需要直接在APP中通过发送shell指令来控制lcd灯,其实按理说应该是方案公司在调好lcd灯驱动之后直接通过service送接口上来给APP,APP调用就可以控制了,这是正规流程,但我们项目的方案商用的mtk方案,方案公司又没人会改,只调好了驱动,让应用程序自己实现灯的控制,这不蛋疼嘛!!!!发就发吧!一、关于shell指令:我们知道,shell指令是Linux里面带的...

2015-05-04 18:34:06 727

原创 Android应用程序获取系统权限

[quote]如何使Android应用程序获取系统权限 第一个方法简单点,不过需要在Android系统源码的环境下用make来编译: 1. 在应用程序的AndroidManifest.xml中的manifest节点中加入android:sharedUserId="android.uid.system"这个属性。 2. 修...

2015-04-29 18:27:59 157

adb端口被占用问题

最近重新安装的电脑,配置了新环境,老是出现:[code="java"] adb server is out of date. killing... ADB server didn't ACK * failed to start daemon * [/code]百度了一下,说是端口被占用,我开个eclipse,然后打开cmd,就提示这个,很烦人。...

2015-04-27 14:16:10 142

Android应用预置系统

项目中需要将开发出来的Apk预置到某款手机里面,如果是不可卸载,就将Apk放到/system/app/下面,如果可以卸载,那就放到/data/app/下面。但遇到了一个问题:apk中包含so文件,这个时候需要将so文件预置到/system/lib/下面,在apk中删除so文件。关于Android系统的分区以及含义,网上的分析如下:安卓的系统一般会有4个重要的分区:boot,sy...

2015-04-22 18:39:14 463

Android textview实现局部点击

先看效果图:[img]http://dl2.iteye.com/upload/attachment/0107/7548/c6cc51cb-8c6d-383b-a4ab-a754f09c46e1.png[/img]实现代码,很简单的:[code="java"] private SpannableString getClickableSpan(String text) { ...

2015-04-20 18:18:03 361

原创 Android SparseArray源码阅读

[code="java"]/* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with...

2015-04-08 09:39:41 132

Android仿微博菜单弹出效果

先上效果图,这个截图不是很流畅,大家可以下载apk试一下。[img]http://dl2.iteye.com/upload/attachment/0107/2720/8c357950-f08d-3f06-addc-b3e2b6612f23.gif[/img]说一下实现思路:1、截取当前窗口,对图片做高斯模糊处理,将处理后的图片做popupwindow的背景图片;2、创建po...

2015-04-03 18:46:26 465

原创 android AnimatorSet AnimationSet 的区别

Android动画分类:一、Tweened Animations(补间动画),设置过度过程,系统完成过度效果补偿。即通过对场景里的对象不断做图像变换 ( 平移、缩放、旋转 ) 产生动画效果。分类1、Alpha:淡入淡出效果2、Scale:缩放效果3、Rotate:旋转效果4、Translate:移动效果二、Frame-by-frame Animations帧动画,原...

2015-03-20 15:57:27 460

Android截屏并对图片做高斯模糊处理

这几天项目中需要模仿一下iOS版本的微博菜单弹出界面,如下图:[img]http://dl2.iteye.com/upload/attachment/0106/9193/c74ca419-1c7c-3579-8a80-f831104e9f96.jpg[/img]用微博的同学都知道这个效果吧,这篇文章先实现模糊效果,进入、退出动画后面文章分析;一、说一下实现思路,很简单的:...

2015-03-19 14:52:37 388

原创 (转载)Android 四种加载方式详解(standard、singleTop、singleTask、singleInstance)

在多Activity开发中,有可能是自己应用之间的Activity跳转,或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例,而不是产生大量重复的Activity。这需要为Activity配置特定的加载模式,而不是使用默认的加载模式。 加载模式分类及在哪里配置Activity有四种加载模式: standard singleTop singleTask s...

2015-03-16 17:24:47 104

Android优化系列之一

一、adapter中getview得简化写法(参考农民伯伯的博客):[code="java"] @Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView ...

2015-03-12 09:27:53 89

Android jni系统变量、函数、接口定义汇总

在做Android jni开发时,jni为我们提供了哪些函数、接口、变量,有时候一头雾水,今天就把jni.h中定义的所有内容列出来,供自己查阅:[code="java"]/* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Version ...

2015-03-09 11:29:05 177

Android中单击空白区域隐藏键盘

项目开发中,产品经理拿着iPhone上的效果说Android!iPhone上在使用键盘输入时,在非输入框位置(即空白区域)点击,键盘会收起来。之前在Android上没有实现过这儿效果,首先想到的是在最外层布局文件上添加onclik事件,由于子view会优先处理事件,所以在点击其他地方时隐藏键盘,但百度之后发现另一种做法:[code="java"]private InputMetho...

2015-03-06 11:29:07 201

Android串口通信:串口读写实例

在Android串口通信:基本知识梳理(http://gqdy365.iteye.com/admin/blogs/2188846)的基础上,我结合我项目中使用串口的实例,进行总结;Android使用jni直接进行串口设备的读写网上已经有开源项目了,本文是基于网上的开源项目在实际项目中的使用做的调整和优化;Google串口开源项目见:https://code.google.com/p/a...

2015-03-05 09:40:56 2004

原创 Android串口通信:基本知识梳理

在Android开发中,如果涉及到与外设硬件、新设备的通信,往往需要通过串口来完成。这儿梳理总结一下Android串口的一些知识。我就直接引用Google开源项目中的资料:https://code.google.com/p/android-serialport-api/wiki/android_to_rs232_guideline?tm=6[quote]Here is a page...

2015-03-05 09:23:29 700

Android手机WiFi调试,查看logcat

在项目开发过程中,遇到这样的场景:有写特殊Android设备只有一个USB口,当挂载U盘之后就无法连接USB实时进行调试了。这儿时候如果设备可以开启WiFi,那就可以用WiFi进行调试;要开启网络调试,执行下面指令即可:[code="java"] "setprop service.adb.tcp.port 5555",// 设置监听的端口,端口可以自定义,如5554,5...

2015-01-30 17:59:31 1161

Android ListView项收缩效果

项目中看到IOS上LIstView在显示隐藏一部分时有一个收缩的特效,但Android自带的没有。就想着能否自定义实现,下面是从项目中提取出来的Demo。先上效果图:[img]http://dl2.iteye.com/upload/attachment/0105/6828/7871e9c9-acb0-3a83-acd8-7d31f0ce2de3.png[/img]点击每一行右边...

2015-01-29 18:37:14 338

Android AnimationDrawable动画实例

1、定义animation_list.xml[code="java"] [/code]注:素材见附件;2、定义配置文件 3、使用[code="java"]import android.app.Activity;import android.graphics.Color;...

2015-01-23 17:39:55 121

原创 Android应用程序防止被LMK干掉

一、背景:项目中APP需要常驻后台,但Android的LMK(low memory kill)会根据自己的算法在内存不足时清理一些进程。如何尽量不让LMK干掉自己的成呢?二、调查:参考一:http://bbs.csdn.net/topics/360088771#r_72861243[quote]Android 系统对于内存管理有自己的一套方法,为了保障系统有序稳定的运信,系...

2015-01-09 15:32:15 919

原创 Android自动挂断来电(ITelephony的使用)

项目中需要在接收到来电之后把电话挂断,再做一些事情,在研究了Android源码以及参考了网络资料之后得出了如下方法:1、定义并注册广播:[code="java"]public void onReceive(final Context context, Intent intent) { if (intent.getAction().equals(Intent.ACTION_...

2015-01-08 09:16:13 635

Android media媒体库分析之:分类别统计媒体文件大小

对系统媒体库不了解的线看这儿:Android media媒体库分析之:MediaProvider http://gqdy365.iteye.com/blog/2150883Android media媒体库分析之:调用系统媒体库完成指定媒体文件扫描 http://gqdy365.iteye.com/blog/2164836先看一下要实现的效果:[img]http://dl...

2014-12-18 15:50:49 314

原创 (转)App调试的几个命令实践

转自:http://www.cnblogs.com/qianxudetianxia/archive/2012/05/14/2497073.html在Android的应用开发中,我们会用到各种代码调试;其实在Android的开发之后,我们可能会碰到一些随机的问题,如cpu过高,内存泄露等,我们无法简单的进行代码调试,我们需要一个系统日志等等,下面我把握工作中碰到的几个常用命令和方法给大家演示...

2014-12-14 21:47:14 81

原创 Android media媒体库分析之:调用系统媒体库完成指定媒体文件扫描

之前文章中分析了Android media媒体库,详见:http://gqdy365.iteye.com/blog/2150883这儿说一下怎么样在自己的应用程序调用系统提供的接口完成对指定媒体文件的扫描,约定:指定的文件:就是指定路径的文件(filepath);扫描:获取媒体的详细信息,比如一首歌曲的歌手名、时长、专辑名等。先看一下简单的做法:[code="java"...

2014-12-10 15:35:45 802

Android系统中自定义按键的短按、双击、长按事件

在项目中碰到这样的问题:由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成:1、单击事件:就是普通key的单击;2、双击事件:500ms内同一按键单击两次;3、长按事件:同一按键长按超过1000ms(系统中长按事件为500ms);4、组合按键:两个以上按键同时按住;...

2014-12-08 17:09:29 1071

Android手动清除APP中Data目录下的文件

在项目中这样的需求,在用户触发重置的时候需要清除自身APP中的数据,APP自身的数据存储在/data/data/packagename/目录下,如下图:[img]http://dl2.iteye.com/upload/attachment/0104/1015/0d8a1ecb-1798-375a-8c02-1ba84033fc35.png[/img]lib目录下存储so库文件,...

2014-12-05 10:04:24 1998

Android中基于protobuf的socket通信的实例

关于Protobuf的获取、用法见这篇文章:http://www.cnblogs.com/reborter/archive/2012/06/04/2535213.html下面直接贴我的实例,工程在后面提供下载:一、proto协议:[code="java"]package pbmsg;option java_outer_classname="UserProto";//生成...

2014-12-04 08:58:23 532

Android media媒体库分析之:MediaProvider

亲们,原创文章转载时请注明出处,谢谢!在做Android媒体应用程序时(Audio、Image、Video)需要对Android的媒体提供者(MediaProvider)做详细的分析,下面记录一下我的收获:[b]一、获取MediaProvider:[/b]该工程在系统源码的packages\providers目录下,提出并导入Eclipse,便于阅读;[img]http:/...

2014-11-01 10:01:17 1056

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除