android---基础
huluhong
这个作者很懒,什么都没留下…
展开
-
Android添加快捷方式(Short)到手机桌面
权限 要在手机桌面上添加快捷方式,首先需要在manifest中添加权限。 添加快捷方式 --> uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> 移除快捷方式 --> uses-permission android:name="原创 2015-07-15 17:21:01 · 1964 阅读 · 0 评论 -
Android开发之如何保证Service不被杀掉(broadcast+system/app)
序言最近项目要实现这样一个效果:运行后,要有一个service始终保持在后台运行,不管用户作出什么操作,都要保证service不被kill,这可真是一个难题。参考了现今各种定制版的系统和安全厂商牛虻软件,如何能保证自己的Service不被杀死呢?其实除了常规的手段,我们可以参考一下微信和360,设置-程序-正在运行,可以看到微信是同时开启了两个进程和服务:【有兴趣可以研究一下 守护原创 2015-04-26 00:20:34 · 617 阅读 · 0 评论 -
安卓开发startservice 和bindservice详解
Service的生命周期方法比Activity少一些,只有onCreate, onStart, onDestroy 我们有两种方式启动一个Service,他们对Service生命周期的影响是不一样的。 1 通过startService Service会经历 onCreate --> onStart stopService的时候直接onDestroy原创 2015-02-09 15:11:32 · 473 阅读 · 0 评论 -
Android开机启动Activity或者Service方法
这段时间在做Android的基础开发,现在有一需求是开机启动,按照网上某些博文教程做了下,始终不成功,一开机总是提示所启动的应用程序意外终止,于是参考了Android SDK doc,终于解决问题,下面把自己的经验分享给大家。Android开机启动Activity或者Service方法【原理】 当Android系统完成BOOT阶段之后,就会发送一条名为 ACTION_原创 2015-02-09 15:08:51 · 407 阅读 · 0 评论 -
android实现开机自启动服务
ndroid实现开机自启动可能是移动操作系统中最简单的了,我们只需要监听一个开机启动的Broadcast(广播)即可。首先写一个Receiver(即广播监听器),继承BroadcastReceiver,如下所示:123456789101112131415原创 2015-02-09 15:00:09 · 573 阅读 · 1 评论 -
eclipse+ADT 进行android应用签名打包详解
1.Eclipse工程中右键工程,弹出选项中选择 android工具-生成签名应用包: 2.选择需要打包的android项目工程: 3.如果已有私钥文件,选择私钥文件输入密码,如果没有参见第6和7步创建私钥文件:4.输入私钥别名和密码:5.选择APK存储的位置,并完成设置 开始生成: 6.没有私钥文件的情况,创建私钥文原创 2014-12-22 17:57:39 · 438 阅读 · 0 评论 -
Android adb shell启动应用程序的方法
在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am.usage: am [subcommand] [options] start an Activity: am start [-D] -D: enable debugging send a broadcast Intent: am broadcast sta原创 2015-01-28 17:55:55 · 449 阅读 · 0 评论 -
Android中如何在应用A中启动或安装应用B
有时候一个应用需要启动另外一个应用来完成操作,比如在某些应用中打开闹钟,相机,日历等等。启动或安装相应的应用的方法:Step1:判断是否安装目标应用。只要知道目标应用的安装包名就可以通过判断"/data/data/packagename"是否存在来实现。[java] view plaincopy/** * 判断是否安装目标应用原创 2015-01-28 17:38:33 · 414 阅读 · 0 评论 -
获取Android签名证书的sha1值
获取安全码输入“安全码”。安全码的组成规则为:Android签名证书的sha1值+“;”+packagename(即:数字签名+分号+包名)注意:中间的分号为英文状态下的分号!您可以通过两种方法来获取Android签名证书的sha1值:(需事先配置好Android环境)获取sha1值第一种方法:使用keytool第1步:运行进入控制台原创 2014-12-17 11:39:04 · 887 阅读 · 0 评论 -
Android入门:增删改查通讯录
一、通讯录应用介绍通讯录应用是Android自带的应用程序,我们看到此应用的时候,可能只认为这是一个应用,用数据库存储数据,但是实际上不是这样的。通讯录是ContentProvider的应用,通讯录由两部分组成:(1)com.android.providers.contacts的ContentProvider:真正存储数据的ContentProvider原创 2014-10-21 16:05:52 · 744 阅读 · 0 评论 -
如何配置android的adb环境变量
对于android的开发人员来说,首先要做的就是环境变量的配置。学习过java的人都知道,java是需要配置环境变量的,那么android开发是否也需要我们配置环境变量呢?当然,安卓的环境变量需要我们配置adb的使用,将开发平台的两个工具包配置到环境变量里。第一步,打开环境变量配置窗口。右击计算机,属性-高级系统设置-环境变量。第二步,添加android系统环境变量原创 2015-05-13 23:12:28 · 628 阅读 · 0 评论 -
Android 常用的adb命令
1、安装APK(如果加 -r 参数,保留已设定数据,重新安装filename.apk) adb install xxx.apk adb install -r xxx.apk 2、卸载APK(如果加 -k 参数,为卸载软件但是保留配置和缓存文件)adb uninstall xxx.apkadb uninstall -k xxx.apk3、查看当前所有连原创 2015-05-13 22:21:23 · 319 阅读 · 0 评论 -
Android Model正确使用姿势——AutoValue
Android Model正确使用姿势——AutoValueAndroid Model正确使用姿势AutoValue前言简介简单使用ImmutableValue types高级使用NullableGson序列化Serializable ParcelableRetrofit和Rxjava结合使用相关插件R转载 2017-07-26 09:57:14 · 4051 阅读 · 0 评论 -
Android屏幕适配全攻略(最权威的官方适配指导)
Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将有所收获!Android屏幕适配出现的原因重要概念屏幕尺寸屏幕分辨率屏幕像素密度dpdipdpisppxmdpihdpixdpi原创 2015-05-21 16:01:19 · 638 阅读 · 0 评论 -
Android中适用于ListView、GridView等组件的通用Adapter
今天随便逛逛CSDN,看到主页上推荐了一篇文章Android 快速开发系列 打造万能的ListView GridView 适配器,刚好这两天写项目自己也封装了类似的CommonAdapter,以前也在github上看到过这样的库,于是自己也把自己的代码再次整理出来与大家分享,也希望能够在CSDN这个平台上学到更多的东西,下面就一起来看看吧。 平时我们在项目中使用到ListVi原创 2015-05-21 16:36:22 · 799 阅读 · 0 评论 -
android static
今天遇到一个很奇怪的问题,慢慢道来。在 android 中,声明一个 static 成员变量,如下所示:[java] view plaincopyprint?static boolean isDown = false; 这是一个全局变量,我想在其它类中使用这个变量。假设我在下面的代码中改变这个值的话,下次原创 2014-10-21 15:58:04 · 421 阅读 · 0 评论 -
解决TimePickerDialog中onTimeSet执行两次的问题
据说DataPickerDialog也会出现这个问题!!!最近,在写一个“滚去睡觉”的APP,在new TimePickerDialog(this,mTimeSetListener, mHour, mMinute, false) 的时候,mTimeSetListener= new OnTimeSetListener() {原创 2014-10-21 11:26:35 · 961 阅读 · 0 评论 -
android 通信中的中文乱码问题
1.要解决中文乱码问题,首先得了解什么是字符编码计算机要处理各种字符,就需要将字符和二进制内码对应起来,这种对应关系就是字符编码。要制定字符编码首先要确定字符集,并将字符集内的字符排序,然后和二进制数字对应起来,根据字符集内字符的多少,确定几个字节来编码。2.常用的字符编码ASCII 编码是目前计算机中常用的最广泛地 字符集及其编码。ISO-8859-1可以表示的是原创 2014-11-05 17:12:33 · 1256 阅读 · 0 评论 -
Android性能调优
本文主要分享自己在娱乐精选(功能类似垂直类appstore)项目中的性能调优点,包括同步改异步、缓存、Layout优化、数据库优化、算法优化、延迟执行等。一、性能瓶颈点整个页面主要由6个Page的ViewPager,每个Page为一个GridView,GridView一屏大概显示4*4的item信息(本文最后有附图)。由于网络数据获取较多且随时需要保持页面内app下载进度及状态,所以出现以原创 2014-11-01 14:20:27 · 335 阅读 · 0 评论 -
android应用中去掉标题栏的三种方法
在android中去掉标题栏有三种方法,它们也有各自的特点。1.在代码里实现[java] view plaincopyprint?this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏 this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去原创 2014-11-10 23:40:54 · 821 阅读 · 0 评论 -
android:ScrollView嵌套ListView的问题
在ScrollView中嵌套使用ListView,看起来ListView只会显示一行多一点,不能滑动。ListView的高度怎么改都有问题,与预期不符合。搜索了一些解决方案,我觉得最好不要用这样的设计,因为默认情况下android 禁止在ScrollView中放入另外的ScrollView,它的高度是无法计算的。方法一:设置完ListView的Adapter后,根据ListVi原创 2014-11-01 15:01:58 · 430 阅读 · 0 评论 -
Android中Bitmap,byte[],Drawable,InputStream相互转化工具类
1、将byte[]转换成InputStream public InputStream Byte2InputStream(byte[] b) { ByteArrayInputStream bais = new ByteArrayInputStream(b); return bais; } 2、 将原创 2014-10-30 15:49:44 · 512 阅读 · 0 评论 -
Eclipse中Android源代码关联及新下载方法
一.下载Android源代码Android源代码从4.0后就可以使用SDK Manager进行下载,打开SDK Manager就可以看到,已4.4为例:但是老是提示下载失败,超时连接,估计是https搞得鬼。通过查看这个Android SDK Manager Log窗口中开始的地方有Fetch的行为,所有手动在浏览器中打开了这个文件:原创 2014-10-30 11:26:26 · 512 阅读 · 0 评论 -
使用SAX解析XML文件
SAX是Simple API for XML的缩写,它并不是由W3C官方所提出的标准,虽然如此,使用SAX的还是不少,几乎所有的XML解析器都会支持它。 与DOM比较而言,SAX是一种轻量型的方法。我们知道,在处理DOM的时候,我们需要读入整个的XML文档,然后在内存中创建DOM树,生成DOM树上的每个Node对象。当文档比较小的时候,这不会造成什么问题,但是一旦文档大起来,处理D原创 2014-10-29 17:12:26 · 655 阅读 · 0 评论 -
使用SAX解析XML文件
SAX(Simple API for XML),是指一种接口,或者一个软件包。 DOM:文档驱动。DOM在解析文件之前把整个文档装入内存,处理大型文件时其性能很差,是由于DOM的树结构所造成的,此结构占用的内存较多。SAX:事件驱动型的XML解析方式。顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,会触发一个事件,用户通原创 2014-10-29 17:16:23 · 522 阅读 · 0 评论 -
android 代码 混淆- 原来如此简单
一个xxx.apk提交给测试、ok,去倒杯水,看看网页~~~~~呃,忽然觉得 是不是应该 给我的代码 提高点安全性,记得看过 apk直接可以 解压,然后很容易的就可以 反编译出 .java找了找,果然,这一切 只不过是 一分钟的事儿,1、得到 classes.dex文件;直接用你机器上的 解压软件 打开 .apk 文件 解压出 classes.d原创 2014-10-11 16:08:04 · 401 阅读 · 0 评论 -
FastJson使用详解
FastJSON是一个很好的java开源json工具类库,相比其他同类的json类库,它的速度的确是fast,最快!但是文档做得不好,在应用前不得不亲测一些功能。 实际上其他的json处理工具都和它差不多,api也有几分相似。 一、JSON规范JSON是一个标准规范,用于数据交互,规范的中文文档如下:http://www.json.org/json-原创 2014-10-27 16:58:06 · 853 阅读 · 0 评论 -
关于DreamWeaver CS6.0 + PhoneGap 之移动开发环境搭建
Html5已经逆袭了移动开发,近期有幸布置PhoneGap的环境搭载,其实本人并不会Html以及JS或者JQuery,为了顺应Html5的风暴,还是稍稍的玩转了一下。CS5.5搭建相对CS6.0来说比较人性化,后者基于新的模式,刚开始上手的确有点困顿,不过呢,今天我们就来了解下如何在CS6.0上顺利的玩转PhoneGap。 关于Android的S原创 2014-10-22 16:09:54 · 1076 阅读 · 1 评论 -
页面跳转与传值(Activity跳转与传值)
一个Android应用程序很少会只有一个Activity对象,如何在多个Activity之间进行跳转,而且能够互相传值是一个很基本的要求。本次我们就讲一下,Android中页面跳转以及传值的几种方式!Activity跳转与传值,主要是通过Intent类来连接多个Activity,通过Bundle类来传递数据。最常见最一般的页面跳转代码,很简单,如下: 也可以这样写:只要这两原创 2014-07-16 22:33:26 · 484 阅读 · 0 评论 -
Android实现 ScrollView + ListView无滚动条滚动
效果图:Android实现 ScrollView+ListView无滚动条滚动,即ListView的数据会全部显示完,但Listview无滚动条。核心代码如下:1. NoScrollListView.java [java] view plaincopy/*** * 自定义ListView子原创 2014-11-01 17:28:03 · 581 阅读 · 0 评论 -
如何编写高效的Android代码
时间是很宝贵的东西,在编写Android代码的时候尽可能的编写出高效的Android代码可以节省你很多的时间,让你有时间去泡妞、去陪女朋友、去陪基友,去吃饭、去娱乐、去睡觉!毕竟,谁都不想整夜整夜的加班,然后还乱吼:时间都去哪了?!下面就整理了怎样提高效率,编写高效的Android代码!看到这,偷笑了吧,表掩饰,我已看到! 对于如何判断一个系统的不合理,这里有两个基本的原则:原创 2014-11-01 16:18:47 · 452 阅读 · 0 评论 -
Android静态变量的生命周期
Android是用Java开发,其静态变量的生命周期遵守Java的设计。我们知道静态变量是在类被load的时候分配内存的,并且存在于方法区。当类被卸载的时候,静态变量被销毁。在PC机的客户端程序中,一个类被加载和卸载,可简单的等同于jvm进程的启动和结束。那么在Android中呢?用的Dalvik vm也是一样的。不过Android不太突出的进程概念,所以对静态变量的生命周期就会感觉模糊,这种模糊原创 2014-10-21 15:56:50 · 338 阅读 · 0 评论 -
Android static静态成员变量的使用误区
static 修饰的静态变量,使用很方便,在不同的类和包中都可以使用,在虚拟机中单独占用内存,没错,这些都是它们的优点,不过在项目上线后,才发现static有一些不太好的地方。在查看项目的崩溃信息时,发现很多地方莫明的出现空指针异常的错误,经过排查,发现可能就是static的问题。我们在项目中,将用户的信息也就是User对象保存成了一个静态变量,而在报错的地方,也都发现有使用过这种变量,因此,原创 2014-10-21 15:55:04 · 521 阅读 · 0 评论 -
Android和 java 提交参数转码问题
1.解决Android、JAVA、ajax提交中文、URL中文参数传递后的乱码问题的解决办法 2.JAVA 中URL链接中文参数乱码的处理方法 3.JAVA URL中带有中文时的处理 在提交参数的时候,无论是Url中还是 Url后面提交的中文参数,怎么处理,调用以下方法就OK!Java代码如下:############运行结果:%E4%BD%A原创 2014-11-05 17:11:32 · 480 阅读 · 0 评论 -
Android获取图片资源的4种方式
1. 图片放在sdcard中, Bitmap imageBitmap = BitmapFactory.decodeFile(path) (path 是图片的路径,跟目录是/sdcard)2. 图片在项目的res文件夹下面 //得到application对象 ApplicationInfo appInfo = getApplicationInfo(); //得到该原创 2014-10-31 16:55:19 · 414 阅读 · 0 评论 -
android 正则表达式验证(二)
editText正则表达式的使用 检查输入是否符合规则 import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; /** * Class原创 2014-10-31 16:43:25 · 521 阅读 · 0 评论 -
Android 正则表达式验证(一)
demo例子:package it.com.cc;import java.util.regex.Matcher;import java.util.regex.Pattern;import android.app.Activity;import android.os.Bundle;public class原创 2014-10-31 16:35:43 · 858 阅读 · 0 评论 -
Android版:验证手机号码的正则表达式
[java] view plaincopy/** * 验证手机格式 */ public static boolean isMobileNO(String mobiles) { /* 移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188 联通:130原创 2014-10-31 11:41:02 · 748 阅读 · 0 评论 -
Eclipse引用外部project
1.应用外部jar包我们平时用的最多的方式 把要引入的jar包 放在project的lib目录下 然后 Add JARs2.引用java Project//最近研究libgdx的时候,发现project之间可以相互引用,限于java project,android project只能引用java project,不能被直接引用,如果需要调用android proj原创 2014-11-19 23:52:18 · 677 阅读 · 0 评论 -
Android基础之——startActivityForResult启动界面并返回数据,上传头像
在android应用的开发过程中,经常会出现启动一个界面后填写部分内容后带着数据返回启动前的界面,最典型的应用就是登录过程。在很多应用程序的模块中,都有“我的”这个模块,在未登录状态下点击其中的某一项,就会弹出登录界面,登录完成后回到我的界面,会显示一些登录后的数据,这个功能的实现就要用到startActivityForResult.下面通过一个小demo来说明一下startActivit原创 2014-10-16 16:01:50 · 875 阅读 · 0 评论