- 博客(69)
- 收藏
- 关注
原创 Android5.0以上系统自动接电话的实现
最近在做自动接听电话的功能,在网上查了很多,4.4.2的系统都能接起来,但是我用的NOTE4,5.1.1系统却怎么也接不起来,今天查到了要连续发两个有序广播来实现,但我还是接不起来,后来突然想起来,有可能是两个广播发的时间太近了造成的,稍微修改一下就可以了,顺便还可以实现挂断功能 /** * 自动接听电话 */ private static void autoAnswe...
2016-04-17 11:10:41
251
原创 Android图片下载缓存库picasso解析
picasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。picasso使用简单,如下Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView); 主要有以下一些特性: 在...
2014-09-30 11:04:37
128
原创 一个常见的android内存泄露 问题
最近在看一个算比较大的android项目的源码,发现了一个很严重的问题,就是项目里使用单例模式,构造函数要传入Context做参数的类,基本上都存在内存泄露问题。 存在内存泄露问题的一些代码片段像下面这样:Util.javapublic class Util { private Context mContext; private static Util sIns...
2014-05-04 20:23:28
107
原创 Android Studio 快捷键
Alt+回车 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C 最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+Shift+Space 自动补全代码Ctrl+空格 代码提示Ct...
2014-04-24 14:09:27
92
原创 Android Studio添加so库
首先将so库放到libs下的对应目录下,如没有armeabi目录就创建下。 然后在工程里面的build.gradle中添加如下代码task copyNativeLibs(type: Copy) { from fileTree(dir: 'libs', include: 'armeabi/*.so') into 'build/lib' } task...
2014-04-24 14:05:22
104
原创 ADB使用方法
0.我只说些常用的以及目前用的到的1.下载附件。解压后拷到c:windows\system32里面。2.打开运行(快捷键windows键+R)输入cmd 回车。3.输入adb devices 可以获取当前连接的设备。4.输入adb shell 回车 接着输入su。这时候$变成#。说明你已经取得权限了,可以进行各项调试命令了。5.如果要从电脑上传送文件到手机的话,使用adb push命令。格式:ad...
2014-04-11 17:27:43
121
原创 TextView 加上事件响应,点击后跳转到自己的 Activity
按这一篇(http://www.linuxidc.com/Linux/2011-10/45649.htm)的方式可以给 TextView 加上事件响应,然而仅限于 web、email、phone、map等几种,如果希望在点击后跳转到自己的 Activity 要怎么实现呢?看代码吧!这是 Activity 代码:@Override public void onCreate(Bu...
2014-04-02 19:08:27
605
原创 Android setting各子页面地址
Android软件时,常常需要打开系统设置或信息界面,来设置相关系统项或查看系统的相关信息,这时我们就可以使用以下语句来实现:(如打开“无线和网络设置”界面) Intent intent = new Intent("/"); ComponentName cm = new ComponentName("com.android.settings","com.android.settings.Wir...
2014-03-24 10:25:33
256
原创 如何得到优酷网mp4格式视频文件url
前言众所周知,视频在网页中使用FLV格式是最常用和方便的(原因你懂得),但是当我们在移动平台上就会遇到麻烦(FLASH不被这些移动设备支持,为啥?我也不知道!)但是这样一个需求来了,在Android平台上播放YouKu的视频。So, 我就开始研究了!分析经过一番研究我发现,他们其实是有另外一个格式的视频存在,但是需要成为他们的合作伙伴(也就是想用的得意思意思)。因此得出结论方法...
2013-09-05 22:30:03
1672
原创 AndroidSAX解析错误,内容获取不完整
转载:http://blog.csdn.net/feng88724/article/details/7013675在讲这次错误之前,先看一下下面这段代码。 【◆以下解析方法是错误的×】 [java] view plaincopyprint? import java.util.ArrayList; import java.util.List; ...
2013-08-29 22:35:35
125
原创 用ViewGroup实现多View自动换行的功能
public class PredicateLayout extends ViewGroup { private int line_height; public static final int DEFAULT_HORIZONTAL_SPACING = 5; public static final int DEFAULT_VERTICAL_SPACING = 5;...
2013-08-24 22:58:54
168
Android使用File创建临时文件,File.createTempFile
废话不多说,直接上代码 File files = new File("/mnt/sdcard/log.txt");//如果这个文件不存在的话就开始创建临时文件if (files.exists()==false) { try { File tempFile=null; tempFile = tempFile.createTempFile("user...
2013-08-17 11:49:48
2390
原创 android应用创建快捷方式
android应用创建快捷方式,包名写自己的 Intent localIntent1 = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); localIntent1.putExtra("duplicate", false); localIntent1.putExtra("android.in...
2013-08-15 08:29:39
83
原创 MatrixCursor和MergeCursor
1、MatrixCursor创建记录ContentProvider对外共享数据的时候的query()方法是需要一个cursor的,但是如果没有数据库,而项目又需要从ContentProvider读取数据的时候怎么办?更糟糕的是其他方法操作也都是需要cursor的。此时就需要MatrixCursor了。相当有趣,它相当于为你模拟了一个表。 ?@O...
2013-07-15 13:53:18
110
原创 android屏蔽home键
@Override public boolean onKeyDown(int keyCode, KeyEvent event){ if(KeyEvent.KEYCODE_HOME==keyCode) android.os.Process.killProcess(android.os.Process.myPid()); return super.onKeyDown(keyCode,...
2013-07-05 08:44:23
89
原创 Android Service被关闭后自动重启,解决被异常kill 服务
每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,这个方法return 一个int值,return 的值有四种: START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service,由于服...
2013-06-18 22:32:37
492
原创 Android网络通信的六种方式示例代码
手机作为一种通讯终端(MMS),伴随着网络的升级而不断的升级换代。1995年1G问世,手机只能进行基本的语音通讯,1996-1997年2G(GSM,CDMA)及其后的GPRS,EDGE等技术的快速发展,手机开始逐渐增加了数据服务功能。2009年开始,3G在全世界开始大规模布置以及苹果创造性开发新型苹果手机。手机慢慢的变成互联网的终端,从而带动了一个新的时代-...
2013-06-18 10:57:40
100
原创 http头参数
用于HTTP请求中的常用请求头字段Accept:用于高速服务器,客户机支持的数据类型Accept-Charset:用于告诉服务器,客户机采用的编码格式Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式Accept-Language:客户机的语言环境Host:客户机通过这个头高速服务器,想访问的主机名If-Modified-Since:客户机通过这个头告诉服务器,资源的缓存...
2013-05-14 22:16:38
126
原创 android通过http访问mysql或者sqlserver,oracle数据库
表单提交中get和post方式的区别有5点1.get是从服务器上获取数据,post是向服务器传送数据。2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3.对于get方式,...
2013-05-14 16:50:13
134
原创 Android中SQLite应用详解
现在的主流移动设备像Android、iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上的SQLite开发技巧。对于Android平台来说,系统内置了丰富的API来供开发人员操作SQLite,我们可以轻松的完成对数据的存取。下面就向大家介绍一下SQLite常用的操作方法,为了方便,...
2013-05-14 11:24:46
74
原创 SQLite的升级
SQLite的升级 做Android应用,不可避免的会与SQLite打交道。随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能,这时候,就需要对SQLite数据库的结构进行升级了。 SQLite提供了ALTER TABLE命令,允许用户重命名或添加新的字段到已有表中,但是不能从表中删除字段。 并且只能在表的末尾添加字段,比如,为 Subscription添加两个字段:...
2013-05-14 10:46:48
63
原创 Android系统启动过程
一、开机加电bootloader(汇编语言)进行底层初始化,并加载内核代码,最终跳转到内核的boot程序。二、Linux内核引导 1)kernel核心初始化(内存初始化,打开中断,初始化进程表等等); 2)驱动初始化; 3)启动内核后台(daemons)线程 4)安装根(root)文件系统 5) 启动第一个用户级进程init三、init进程启动...
2013-05-06 16:21:42
93
原创 android4.0虚拟按键
我们公司手机依然还是支持硬件按键,但是android4.0的虚拟按键,可能被屏蔽了,在查找很多资料,找到了打开虚拟按键的地方。开发基于android源代码的同事们,就知道在framework/base/core/res/res/values/config.xml文件中,有一个标签: <bool name="config_sh...
2013-04-07 15:54:59
115
原创 Android动态加载jar/dex
Android动态加载jar/dex前言 在目前的软硬件环境下,Native App与Web App在用户体验上有着明显的优势,但在实际项目中有些会因为业务的频繁变更而频繁的升级客户端,造成较差的用户体验,而这也恰恰是Web App的优势。本文对网上Android动态加载jar的资料进行梳理和实践在这里与大家一起分享,试图改善频繁升级这一弊病。 声明 欢迎转载,...
2013-03-18 17:31:25
59
原创 android各种读取图片方式
对获取图片资源的方法稍作总结:方式一:已将图片保存到drawable目录下,通过图片id获得Drawable或者Bitmap,此方式最常用。(若只知道图片的名称,还可以通过图片的名称获得图片的id)(1)通过图片id获得DrawableDrawable drawable=getResource().getDrawable(R.drawable.xxx);(2)通过图片id获得...
2013-03-18 17:25:05
103
原创 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法
前言相信这样一个问题,大家都不会陌生,“有什么的方法可以使Android的程序APK不用安装,而能够直接启动”。 发现最后的结局都是不能实现这个美好的愿望,而腾讯Android手机游戏平台却又能实现这个功能,下载的连连看,五子棋都没有安装过程,但是都能直接运行,这其中到底有什么“玄机”呢,也有热心童鞋问过我这个问题,本文就为大家来揭开这个谜团。 重要说明在实践的...
2013-03-18 13:51:39
95
原创 Android动态加载代码技术
在开发Android App的过程当中,可能希望实现插件式软件架构,将一部分代码以另外一个APK的形式单独发布,而在主程序中加载并执行这个APK中的代码。 实现这个任务的一般方法是:[code="java"]// 加载类clsContext pluginContext = mainContext.createPackageContext(PLUGIN_PKG,...
2013-03-15 16:08:04
92
原创 getWritableDatabase()和getReadableDatabase()的区别
getReadableDatabase()并不是以只读方式打开数据库,而是先执行getWritableDatabase(),失败的情况下才调用。getWritableDatabase()和getReadableDatabase()方法都可以获取一个用于操作数据库的SQLiteDatabase实例。但getWritableDatabase()方法以读写方式打开数据库,一旦数据库的磁盘...
2013-03-14 11:32:45
154
Android使用ApacheFtpServer实现Ftp服务器(增加用户验证)
为了方便在Android手机和PC电脑之间文件传输和管理,于是想在Android上建立FTP服务器来实现文件访问及管理操作。从网上找到这个例子后开始使用,结果发现,死活都登录不了,配置不了用户名和密码,匿名登录也登不上,给我急的啊,后来看了一下FTPServer的源码发现需要一个配置文件,所以就找来自己加上了,再一试,OK,可以登录了,分享给大家!1、导入Apache FtpServer依...
2013-02-26 00:27:33
583
原创 android2.3获取系统当前日期格式
获取系统日期格式:DateFormat.getDateFormat(mContext).format(now)
2013-02-22 16:29:58
89
原创 Android 4.0为Launcher主界面所有应用程序图标添加统一背景主题 .
Android主界面的应用程序图标风格迥异,为了使用户看上去感觉比较统一,决定对其图标进行设置统一背景。 在ApplicationPackageManager.java里有个public Drawable getDrawable(String packageName, int resid,ApplicationInfo appInfo) 的方法用于返回应用的图标。所以,我们可以在...
2013-01-15 17:48:16
219
原创 android 调用系统界面
Intent跳转到系统应用中的拨号界面、联系人界面、短信界面及其他发表于19 天前 ? Android, Android开发 ? 评论数 1 ? 被围观 热度 49?+现在开发中的功能需要直接跳转到拨号、联系人、短信界面等等,查找了很多资料,自己整理了一下。首先,我们先看拨号界面,代码如下:Intent intent =new Intent();intent.setAc...
2013-01-11 14:49:32
116
原创 Android 广播大全 Intent Action 事件
Intent.ACTION_AIRPLANE_MODE_CHANGED;//关闭或打开飞行模式时的广播 Intent.ACTION_BATTERY_CHANGED;//充电状态,或者电池的电量发生变化//电池的充电状态、电荷级别改变,不能通过组建声明接收这个广播,只有通过Context.registerReceiver()注册 Intent....
2013-01-09 16:49:50
85
原创 PowerManager和WakeLock的操作步骤
1.PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);通过 Context.getSystemService().方法获取PowerManager实例。2.然后通过PowerManager的newWakeLock((int flags, String tag)来生成WakeLock实例。int Fl...
2013-01-09 11:11:24
87
原创 android一键锁屏代码
要用到下面两个类:DeviceAdminReceiver 设备管理组件。这个类提供了一个方便解释由系统发出的意图的动作。你的设备管理应用程序必须包含一个DeviceAdminReceiver的子类。本程序中,就代表一个手机上的设备管理器.DevicePolicyManager 一个管理设备上规范的类。 大多数客户端必须声明一个用户当前已经启用的DeviceAdminReceiver。 ...
2013-01-09 10:07:21
95
原创 Ubuntu 解压 压缩 rar文件
Ubuntu 解压 压缩 rar文件压缩功能安装 sudo apt-get install rar卸载 sudo apt-get remove rar解压功能安装 sudo apt-get install unrar卸载 sudo apt-get remove unrar完毕!1,可以直接鼠标操作2,终端:压缩:$ rar e file.rar...
2012-12-14 16:32:43
116
原创 android4.0.4 系统默认值的修改
【设置-》SIM卡管理-》卡(1/2)代表色/名字/本机号-》本机号显示,修改默认为后四位】frameworks\base\core\java\android\provider\Telephony.java?1 public static final int DISLPAY_NUMBER_DEFAULT = DISPLAY_NUMBER_LAST; 【设置-》SIM卡管理-》默认S...
2012-12-13 10:17:07
66
原创 android分辨率 .
hdpi里面主要放高分辨率的图片,如WVGA (480×800),FWVGA (480×854)mdpi里面主要放中等分辨率的图片,如HVGA (320×480)ldpi里面主要放低分辨率的图片,如QVGA (240×320)目前主流的分辨率是:540x960, 480x854, 480x800 如果要具体细分不同分辨率用不同的图片,可以参考下面: anim...
2012-12-04 11:17:59
108
MTK6577 Android修改关机充电动画的位置
修改mediatek/custom/$prj/uboot/inc/cust_display.h中的#define BAR_LEFT (215)#define BAR_TOP (156)#define BAR_RIGHT (265)#define BAR_BOTTOM (278)这几个值...
2012-12-01 09:41:16
345
Android获取当前插入了几张SIM卡,适用于MTK6577
SIMInfoWrapper.getDefault().getInsertedSimCount();boolean noSim = SIMInfoWrapper.getDefault().getInsertedSimCount() == 0;
2012-11-27 10:07:57
442
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人