android学习常用资料目录

android项目实践

1.仿360一键清理实现(一)

  “一键清理”是一个桌面图标,点击图标后,显示一个视图,进行清理动画,之后显示清理了几个进程,释放了多少M内存,点击“设置过滤名单”启动另外一个Activity编辑过滤名单

1.仿360一键清理实现(二)

“一键清理”是一个桌面图标,点击图标后,显示一个视图,进行清理动画,之后显示清理了几个进程,释放了多少M内存,点击“设置过滤名单”启动另外一个Activity编辑过滤名单


android 技术总结

1.android 系统签名

   介绍如何使用源码中的  (testkey:普通APK,默认情况下使用,platform:该APK完成一些系统的核心功能,经过对系统中存在的文件夹的访问测试,这种方式编译出来的APK所在进程的UID为system,shared:该APK需要和home/contacts进程共享数据,media:该APK是media/download系统中的一环。)4种密钥公钥进行签名。

2.MVC ListView

  介绍什么是MVC以及MVC在SDK中的使用,扩展了ListView,adapter的简单使用。

3.android 反射机制的使用

  介绍什么是反射机制,着重讲述反射机制在android中的具体应用:1.通过反射技术可以访问到其他包名下数据方法等,这些为一些APK换皮肤提供了方便 2. 访问android 隐藏的API (不消失的Toast)3. 修改某些“不可改” 的系统资源(快速滑块)

4.android SQLite 的使用

  以班级学生简单实体,介绍SQLite的增、删、查、改等简单使用,SQLite的详细语法点击这里

5.android Touch事件的传递机制

  对于触摸(Touch)触发的事件,在Android中,事件主要包括点按(onClick)、长按(onLongClick)、拖拽(onDrag)、滑动(onScroll)等,点按又包括单击和双击,另外还包括单指操作和多指操作。其中Touch的第一个状态是 ACTION_DOWN, 表示按下了屏幕。之后,touch将会有后续事件,比如移动、抬起等,一个Action_DOWN, n个ACTION_MOVE, 1个ACTION_UP,就构成了Android中众多的事件。文章中做出了详细分析。

6.常用Intent打开系统程序

   打开拨号,短信,设置,电量信息,壁纸,图库等系统程序。

7.LauncherMode 详细分析

   详细介绍standard、singleTop、singleTask、singleInstance4中LauncherMode的区别和用法

8.有关2D绘图

   大部分2D使用的api都在android.graphics和android.graphics.drawable包中。他们提供了图形处理相关的: Canvas、ColorFilter、Point(点)和RetcF(矩形)等,还有一些动画相关的:AnimationDrawable、 BitmapDrawable和TransitionDrawable等,文章中都有详细说明。

9.有关多线程

  用代码说明子线程与主线程的区别。

10.关于android任务延时

  使用Handle、Thread、TimeTask、AlarmManager来进行任务延时。

11.Launcher的启动过程

  安装好应用后需要有一个Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应用程序就是Launcher了,本文将详细分析Launcher应用程序的启动过程。

12.Activity的生命周期

  迄今为止是我看到最好的一片关于生命周期的文章了。

13.android的一个漏洞

  使用这个漏洞可以进行屏幕劫持,增加系统负荷,窃密等(demo)

14.android 数据读写操作

  文件读写操作的类,可以留做工具。

15.android换皮肤

  3种换皮肤的思路,可以适用市面上大多数产品的换皮肤工作

16.PackageManager的使用

  Android系统为我们提供了很多服务管理的类,包括ActivityManager、PowerManager(电源管理)、AudioManager(音频管理)

等。除此之外,还提供了一个PackageManger管理类,它的主要职责是管理应用程序包。 通过它,我们就可以获取应用程序信息。

17.SharedPreferences之你不知道的事

 一、SharedPreferences将数据文件保存在指定路径上

 二、SharedPreferences保存图片

 三、SharedPreferences保存对象

18.SAX引擎之XML解析和数据存储

  Android SDK只支持采用SAX技术读取XML,SAX采用顺序读取的方式来处理XML文档。这就要求在每读取XML文档的某个节点时会触发相应的事件来处理这个节点。文章基于一个实例讲述SAX的使用

19.JSON数据存储

  JSON是一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性,从而可以在不同平台间进行数据交换,JSON可以将Java对象转成json格式的字符串,可以将json字符串转换成Java对象。比XML更轻量级,Json使用起来比较轻便和简单。JSON数据格式,在Android中被广泛运用于客户端和服务器通信,在网络数据传输与解析时非常方便。


20.一些实用方法收集

  一些可以复用的方法集合

21.android4.4时间自动更新机制

总结:
  如果时间自动同步选项未勾选,直接返回;
  如果NITZ已同步且上次NITZ同步未超过24小时,则设置定时器24小时后再触发同步,即广播NetworkTimeUpdateService.ACTION_POLL;
  如果NTP上次成功同步超过24小时或用户勾选自动同步选项,则进行下面的NTP同步,否则同上设置定时器24小时后再触发同步;
  如果上次NTP成功同步超过24小时,则发起同步mTime.forceRefresh();
  如果同步成功,获取此刻NTP时间ntp=mTime.currentTimeMillis();
  如果同步时间与当前本机时间误差超过指定值阀值,则把ntp设置为本机时间SystemClock.setCurrentTimeMillis(ntp)




android 与UI有关

1.上下左右都可以滑动的ScrollView

   一个上下左右都可以滑动的自定义ScrollView

2.在TextView中添加图片

  聊天软件中表情发送功能,使用SpannableString+ImageSpan可以很容易实现、重写ondraw方法、在xml中配置....

3.ListView的使用

  介绍ListView的常见用法,适合初学者。

4.有关布局的几个易混淆的属性

 介绍android:layout_weight、android:padding和android:layout_margin、android:gravity和android:layout_gravity...对比,常见误区

5.android 动画效果、动画知识全收集

  android 社区整理的有关动画的知识,值得收藏....

6.LineWrapLayout--根据子控件宽自动换行

  一些带搜索功能的app,在搜索栏下面一般会提供一些关键字供用户选择。

也可以根据用户输入的文字,在下一次使用的时候该文字出现在常用关键字里面,只要轻轻一点就可以搜索了,无需再次输入。

关键字可以动态添加,这就要考虑换行的问题了



android 异常和解决办法

1.Android Bitmap OutOfMemory解决办法

  在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常,解决办法有:适当时候手动释放内存、将图片压缩、代码优化...

2.PatternSyntaxException: Syntax error in regexp pattern near index 1

   例如代码:    temp =temp.split("}")[1];会出错,报上述异常。 因为“{” 是关键字符,要加上转意字符temp =temp.split("\\}")[1];

3.SQLite外键约束失效的解决办法

   SQLite在3.6.19版本中才开始支持外键约束,但是为了兼容以前的程序,默认并没有启用该功能,如果要启用该功能每次都要需要使用如下语句:PRAGMA foreign_keys = ON来打开。也就是说,在执行删除一个班级的语句的时候需要执行db.execSQL("PRAGMA foreign_keys=ON")

4.eclipse不能预览layout 解决办法

  This version of the rendering library is more recent than your version of ADT plug-in. Please update ADT plug-in,导致无法正常预览布局文件;问题根源:SDK版本过高,ADT版本低


5.java.io.NotSerializableException的解决办法

  非静态内部类拥有对外部类的所有成员的完全访问权限,包括实例字段和方法。为实现这一行为,非静态内部类存储着对外部类的实例的一个隐式引用。序列化时要求所有的成员变量是Serializable,现在外部的类并没有implements Serializable,所以就抛出java.io.NotSerializableException异常


6.Launcher在开机时重启解决办法

    由于当时的Launcher设置为强制横屏了,应该是不会引起重启的。

对于Configuration改变系统会发一个android.intent.action.CONFIGURATION_CHANGED的广播

于是就做了一个广播接收器去检测是不是由于Configuration改变引起的(后来发现Launcher本身有监听这个广播)

果然发现MCC值由0(未定义)变为460(中国)



android 开发环境

1.Eclipse 快捷键整理

  Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率  

2.ubuntu不能更新SDK ADT或更新很慢的解决办法

  亲测可行,可以解决上述问题

3.ubuntu12.04android开发环境搭建

  很详细很强大,一步一步手把手教你搭建开发环境

4.HTML5开发环境搭建

  跨平台移动开发实际上就是基于HTML5开发软件界面和主要的业务逻辑,因此一套完善的基于移动平台的HTML5开发环境是非常有必要的



android API

1.setCompoundDrawables和setCompoundDrawablesWithIntrinsicBounds

  setCompoundDrawables 画的drawable的宽高是按drawable.setBound()设置的宽高,
所以才有The Drawables must already have had setBounds(Rect) called.setCompoundDrawablesWithIntrinsicBounds是画的drawable的宽高是按drawable固定的宽高,
所以才有The Drawables' bounds will be set to their intrinsic bounds
   


2.getMeasuredWidth和getWidth在何时可以取得正确数值

  1.在构造方法中无论是getWidth还是getMeasuredWidth都是得不到正确数值的。

  2.getMeasuredWidth得到正确数值需要在调用过onMeasure之后。

  3.getWidth得到正确数值需要调用过onLayout之后。


3.Activity属性官方详解

  Activity的所有属性中英对照解释,非常详细的资料





其他

1.清华梦的粉碎---写给清华大学的退学申请

  2005年在水木社区BLOG上发表了《清华梦的粉碎--写给清华大学的退学申请》明确要求退学,痛斥国内高等教育弊端

2.支付宝退出指纹支付,打造偷不走的密码

  移动支付安全是移动支付发展一直无法逾越的坎,支付密码、账号被盗案件比比皆是。为了给网络支付安全打造真正的保护伞,支付宝近日宣布,推出新型的安全体系,未来将用生物识别、行为习惯等来替代密码给消费者的移动支付钱包保驾护航。

 

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值