系统信息、PM、AM

2016-3-19 chenhui 零散笔记

系统信息通常可以通过 android.os.Build 和 SystemProperty 两个类进行获取。 andorid.os.Build 保存的主要是一些硬件信息和编译信息,可直接通过成员获取,比如: Build.BRAND :Android 系统定制商 Build.PRODUCT :手机产品名 .. ...

阅读全文>>

评论(0) 浏览(170)

ABD 常用命令

2016-3-2 chenhui 零散笔记

ADB 原生常用命令 adb shell     进入 Android 命令行 adb install -r x.apk     安装应用程序 adb push <local> <remote>     把 local 指向的本地文...

阅读全文>>

评论(0) 浏览(133)

ViewDragHelper

2016-2-29 chenhui 零散笔记

ViewDragHelper 是一个简化 ViewGroup 实现子 View 的拖动操作的类,下面先给出一个使用 ViewDragHelper 的 ViewGroup 的框架: public class MyViewGroup extends FrameLayout { ViewDragHelper vdh; Callba...

阅读全文>>

评论(0) 浏览(184)

内存和代码优化

2016-2-24 chenhui 零散笔记

内存优化主要是 Bitmap 的优化,在使用 Bitmap 的时候,要注意下面几点: 及时回收内存。在用完 Bitmap 后,要及时调用 bitmap.recycle() 来释放他 使用 LruCache 来对图片进行缓存 代码优化就多了,注意点如下: 减少成员变量,尽量使用局部变量 减少对象的创建...

阅读全文>>

评论(0) 浏览(144)

布局优化

2016-2-24 chenhui 零散笔记

尽量避免重叠绘制,即一个 View 叠在另一个 View 上面。 优化布局层数,布局文件的 XML 树不能太高。 使用 <include /> 来重用布局文件。 如果我们需要一开始就隐藏某个 View,那么使用 <ViewStub /> 标签来包住他,他默认是不显示的,可以在 Java 里显示他。他的优势是只有在...

阅读全文>>

评论(0) 浏览(137)

APK 的反编译和打包

2016-2-23 chenhui 零散笔记

Android 的 Apk 包,本质上是一个带有签名的 ZIP 压缩包,我们可以直接用 ZIP 压缩软件解压他。 下面是微信的 Apk 包解压后的内容: assets 存放了一些配置文件 lib 目录存放了一些 NDK 库 r 目录是资源文件 META-INF 目录存放签名文件 cl...

阅读全文>>

评论(0) 浏览(154)

Android 系统目录

2016-2-16 chenhui 零散笔记

系统目录 /system/app/      系统 APP 目录 /system/bin/         系统自带组件目录 /system/frot/     系统字体 /system/framework/     系统...

阅读全文>>

评论(0) 浏览(158)

Activity四种启动模式

2016-1-30 chenhui 零散笔记

Activity 有四种启动模式,分别为: standard     默认模式。每次启动都会创建一个新的 Activity 实例,这些 Activity 会互相叠加。 singleTop     允许多个实例,但是不允许相同的实例叠加。即可以存在两个相同的 Activity 的实例,但他们其中一个不...

阅读全文>>

评论(0) 浏览(147)

Activity 任务栈

2016-1-19 chenhui 零散笔记

一个 Android 应用程序由多个 Activity 组成,这些 Activity 保存在一个任务栈里,这个栈又被称为 Task 。 一个栈中的 Activity 不一定属于一个应用程序。 新启动的 Activity 保存在栈顶,处于活动状态,而被他压住的 Activity 依然在栈中,只不过是停止状态。当用户按下返回键或者 finish() 被调用时,栈顶的 Activit...

阅读全文>>

评论(0) 浏览(120)

定时器

2016-1-7 chenhui 零散笔记

有三种方法实现定时器。 方法一,Handler+Thread。其实就是线程运行的时候,睡眠自己以达到定时效果。 public class HanderDemoActivity extends Activity { TextView tvShow; @Override public void onCreate(B...

阅读全文>>

评论(0) 浏览(148)

得到当前位置

2016-1-6 chenhui 零散笔记

Android 为 GPS 提供了一个 LocaltionManager 类,GPS 定位相关的服务、对象都由该对象来生成。 可以调用以下代码来得到一个 LocaltionManager 对象。 LocaltionManager lm =  getSystemService(Context.LOCATION_SERVICE); 一旦得到了 Locati...

阅读全文>>

评论(0) 浏览(134)

缓存 Bitmap 实现快速访问图片

2016-1-6 chenhui 零散笔记

将单个Bitmap加载到UI是简单直接的,但是如果我们需要一次性加载大量的图片,事情则会变得复杂起来。在大多数情况下(例如在使用ListView,GridView或ViewPager时),屏幕上的图片和因滑动将要显示的图片的数量通常是没有限制的。 通过循环利用子视图可以缓解内存的使用,垃圾回收器也会释放那些不再需要使用的Bitmap。这些机制都非常好,但是为了保证一个流畅的用户体验,我们希...

阅读全文>>

评论(0) 浏览(210)

加载大图

2016-1-6 chenhui 零散笔记

Android 限制每个应用程序所能使用的内存,这就带来一个问题:当我们加载一张大图片的时候,由于内存的不足,容易导致 OOM 错误。 本文介绍如何通过加载一张大图的缩小版本,来防止 OOM 错误。 为了避免java.lang.OutOfMemory 的异常,我们需要在真正解析图片之前检查它的尺寸(除非你能确定这个数据源提供了准确无误的图片且不会导致占用过多的...

阅读全文>>

评论(0) 浏览(155)

[转]Fragment

2016-1-6 chenhui 零散笔记

可以把fragment想象成activity中一个模块化的部分,它拥有自己的生命周期,接收自己的输入事件,可以在acvitity运行过程中添加或者移除(有点像"子activity",可以在不同的activity里面重复使用)。 Fragment 的创建 创建一个fragment,首先需要继承Fragment类,然后在关键的生命周期方法中插入APP...

阅读全文>>

评论(0) 浏览(242)

编写不同的 Layout 来适配不同的屏幕

2016-1-5 chenhui 零散笔记

Android 有: 4种普遍尺寸:小(small),普通(normal),大(large),超大(xlarge) 4种普遍分辨率:低精度(ldpi), 中精度(mdpi), 高精度(hdpi), 超高精度(xhdpi) 为了针对不同的屏幕去优化用户体验,我们需要为每一种将要支持的屏幕尺寸创建唯一的XML文件。每一...

阅读全文>>

评论(0) 浏览(134)

多媒体

2016-1-4 chenhui 零散笔记

音乐播放 //播放 res/raw 目录中的音频资源(mp3) MediaPlayer mediaplayer = MediaPlayer.create(this,R.raw.music); if (mediaplayer != null) mediaplayer.stop(); //执行一些准备工作 mediaplayer.prepare(); //开始播放 mediaplayer.star...

阅读全文>>

评论(0) 浏览(259)

AIDL Service

2016-1-4 chenhui 零散笔记

AIDL Service 就是可以被其他应用程序访问的 Service。 建立 AIDL Service 的步骤如下: 在 Android 工程中的源文件目录建立一个 *.aidl 文件,他语法类似 Java,支持基础数据类型,不支持访问修饰符,编译后会生成一个 *.java 的接口文件。 定义一个继承了 <...

阅读全文>>

评论(0) 浏览(148)

Service

2016-1-4 chenhui 零散笔记

Service 分为两种,一种是独立于其他 Activity 运行的 Service,另一种则是需要通过其他 Activity 绑定的 Activity 并进行控制的 Service。 第一种 Service 非常简单,实例如下: public class Service1 extends Service{ @Override ...

阅读全文>>

评论(0) 浏览(162)

HTTP

2016-1-4 chenhui 零散笔记

发送 GET 请求的简便方法 //要发送的 URL。即 <host><?><x><=><y>... 这种格式 String url = <URL> //创建 GET 对象 HttpGet httpget = new HttpGet(url); //发送 GET 请求 HttpResponse response = n...

阅读全文>>

评论(0) 浏览(143)

WebView

2016-1-4 chenhui 零散笔记

XML 随便定义即可 。 public class MainActivity extends Activity { WebView webview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);...

阅读全文>>

评论(0) 浏览(122)

Copyright ©2015-2016 freehui All rights reserved