
安卓开发
朱培
爱学习,爱生活,努力让自己成为一名更优秀的工程师,奋斗吧骚年!
展开
-
快速索引 (对View的自定义)
快速索引应用场景: 微信好友列表, 联系人通讯录, 应用管理, 文件管理等。 快速索引7步曲: *1. A-Z索引的绘制. * 2. 处理Touch事件. * 3. 提供使用监听\回调 * 4. 汉字转换成拼音. * 5. 进行排序展示. * 6. 进行分组. * 7. 将自定义控件和ListView合体.1.A-Z索引的绘制protected void onDraw(Ca原创 2015-12-10 22:07:27 · 570 阅读 · 0 评论 -
新浪微博Oauth2.0授权认证及SDK、API的使用(Android)
本文主要介绍新浪微博客户端的api接入,实现第三方授权登录功能,以及api的调用。要求亲自动手进行实际操作,学会基本的授权认证机制和常用API的调用。Oauth2.0协议:允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站...原创 2016-07-18 11:39:08 · 14872 阅读 · 0 评论 -
AndroidStudio中导入SlidingMenu报错解决方案
我们在使用第三方开源的侧滑框架中,在原来的eclipse中导入问题基本不大,就是引用库就可以了,但是在AndroidStudio中导入却会遇到某些奇奇怪怪的问题。下面来分享一下如何正确的在AndroidStudio中导入SlidingMenu库。建议在导入的时候不要直接复制库到app同级目录。我们可以使用file->new->import Module.....原创 2016-07-18 13:11:07 · 4442 阅读 · 0 评论 -
必须要知道的小黑技术——零权限、破解密码等安卓知识
首先我们需要了解了安卓的目录结构,我们使用的软件是yaffs2img浏览器。#Android目录结构* data * app:用户安装的应用 * data:应用的专属文件夹 * system:系统的配置信息,注册表文件 * anr:anr异常的记录信息* dev:devices的缩写 * 存放设备所对应的文件* mnt:mo原创 2015-12-31 17:17:58 · 1231 阅读 · 0 评论 -
源码篇——Handler消息机制
Handler消息机制Message 消息Message.obtain()Message msg = new Message()Handlernew Handler(){ handlerMessage(Message msg){ // 处理消息 }}Handler的构造方法: public H原创 2015-12-23 16:37:36 · 570 阅读 · 0 评论 -
源码篇——安卓启动流程
首先说到的是安卓的四层架构: APPLICTION,APPLICATION FRAMEWORK,LIBRARICB+ANDROID RUNTIME,LINUX KERNELandroid启动当引导程序启动Linux内核后,会加载各种驱动和数据结构,当有了驱动以后,开始启动Android系统同时会加载用户级别的第一个进程init(syste原创 2015-12-23 16:35:42 · 820 阅读 · 0 评论 -
Android源代码结构分析
Google提供的Android包含了:Android源代码,工具链,基础C库,仿真环境,开发环境等,完整的一套。第一级别的目录和文件如下所示:[cpp] view plaincopy---------------- ├── Makefile 全局的Makefile ├── build转载 2015-12-23 16:31:52 · 2356 阅读 · 0 评论 -
使用Contacts Contract Content Provider操作通讯录最佳实践
Android向所有被赋予READ_CONTACTS权限的应用程序提供了联系人信息数据库的完全访问权限。Contacts Contract使用3层数据模型去存储数据,下面介绍Contacts Contract的子类:1.Data 表中的每行都定义了个人的数据集(电话号码,email地址,等等),用MIME类型区分开。尽管有为每个个人数据的类型预定义可用的列名(ContactsContract.原创 2015-12-23 10:45:18 · 2198 阅读 · 0 评论 -
黏性控件的使用
在qq上面用一个红色的黏性控件来表示消息已读或未读。可拖动。今天就来分享一下如何实现这个功能。我们需要的jar包是nineoldandroids-2.4.0.jar。应用场景: 未读提醒的清除1.画静态图 //1.画固定圆canvas.drawCircle(mStickCenter.x,mStickCenter.y,mStickRadious, mPaint);//2.画拖拽圆 canva原创 2015-12-11 22:40:59 · 605 阅读 · 0 评论 -
安卓性能优化手册
本手册适合至少有初级经验的开发者查阅或复习相关知识使用,新手可能会看不懂。1、java代码优化1.1安卓如何执行代码dvm:.java->.class->.dex->.apk优化斐波那契数列:斐波那契数列的递推公式是f(n)=f(n-1)+f(n-2),特征方程为:x2=x+1,解该方程得(1+sqrt(5))/2,(1-sqrt(5))/2.所以f(n)=Ax1n+Bx2n,带入f(0)=0,原创 2016-01-07 12:32:27 · 1972 阅读 · 2 评论 -
语言识别和聊天机器人的实现
安卓上面语音识别和聊天机器人是非常常见也是非常实用的功能,在这里主要分享一款非常著名的语言平台,科大迅飞开放平台。首先从官网下载一个sdk的包,如下图:我们可以新建一个安卓工程,取名Robot,将下载下来的文件中的libs中的文件拷贝到我们的项目中的libs目录下,然后写一下布局文件:activity_main.xml<LinearLayout xmlns:andr原创 2015-12-01 16:45:11 · 2954 阅读 · 1 评论 -
新闻客户端案例开发
新闻客户端,顾名思义就是看新闻用的客户端。该新闻用到的知识模块有:android高级界面设计(Fragment、ViewPager),android网络通信(http通信),开源组件(xutils框架-HttpUtils模块、xutils框架-BitmapUtils模块),开源框架(library)。所需jar包:xUtils、gson、android-support-v4。•主界原创 2016-02-27 22:50:56 · 6771 阅读 · 18 评论 -
类型转换异常处理java.lang.RuntimeException
前几天在做一个安卓项目的时候一直报java.lang.RuntimeException错,一直调试不出来,今天突然又灵感是不是文件配置出错了,果然在清单文件中少了一句 android:name=".KXApplication"。02-05 10:19:52.429: E/AndroidRuntime(16026): java.lang.RuntimeException: Una原创 2016-02-05 11:08:14 · 3512 阅读 · 0 评论 -
百度地图开发全解析
三大核心 SDKInitalizer BaiduM MapViewap基本地图增加权限重点是处理位置信息权限Layout中添加MapView控件用于展示地图 创建管理工具, 并初使化 SDKInitializer在initialize时校验key(permission check error)和网络状态(network error),关于状态码信息我们可以在SDKIn原创 2015-12-14 22:54:47 · 3219 阅读 · 2 评论 -
屏幕适配全攻略
一、重要概念屏幕尺寸:指平米的对角线的长度,单位是英寸,1英寸=2.54厘米,它对我们屏幕适配不是很重要。屏幕分辨率:指在横纵向上的像素点数,单位是px,1px = 1个像素点,一般以纵向像素*横向像素,如1920*1080.屏幕像素密度:指每英寸上的像素点数,单位是dpi,即“dot per inch”的缩写,像素密度与屏幕尺寸和分辨率有关像素密度计算:对角线分辨率-->对角线分原创 2015-12-29 20:17:32 · 955 阅读 · 0 评论 -
闪屏页面开发遇到的问题you need to use a theme.appcompat theme (or descendant)
开始做一个新闻客户端的应用,在做到闪屏页面时之前发布应用的时候总是报错,原因是我在splash.java中把Activty写成ActionBarActivity,导包,然后就可以了。以前也遇到过这种情况,真是不应该再一次犯这种错误啊!原创 2015-11-21 18:36:08 · 588 阅读 · 0 评论 -
安卓开发过程中空指针的问题Java.lang.NullPointerException
最近做一个新闻客户端的应用,经常出现空指针的问题,我想一方面可能是自己水平有限,二是开发过程中有一些遗漏的地方。一般情况下新手出现空指针的概率较高。下面来总结一下经常出现的问题。1.所谓的指针,就是java中的对象的引用。比如String s;这个s就是指针。 2.所谓的空指针,就是指针的内容为空,比如上面的s,如果令它指向null,就是空指针。 3.所谓的空指针异常,就是一个指针是原创 2015-11-24 22:58:01 · 1425 阅读 · 0 评论 -
2015最流行的Android组件、工具、框架大全
原文链接:http://www.open-open.com/lib/view/open1436262653692.htmlAndroid 是目前最流行的移动操作系统之一。 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生了一大批的优秀的组件。本文试图将目前流行的组件收集起来以供参考, 如果你发现本文还没有列出的组件,欢迎在评论中贴出来,我转载 2015-11-25 22:31:19 · 767 阅读 · 0 评论 -
安卓开发过程中权限大全
最近自学某公司的一些课程,在这里做一些总结,安卓开发常用的权限。1活动管理器权限代码ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);2警报管理器权限代原创 2015-11-20 22:32:57 · 869 阅读 · 0 评论 -
安卓消息推送解决方案
一、推送工具使用我们在做安卓开发的时候,通常需要一些消息推送功能,我个人平时用的是极光推送,极光推送(JPush)是一个端到端的推送服务,使得服务器端消息能够及时地推送到终端用户手机上,让开发者积极地保持与用户的连接,从而提高用户活跃度、提高应用的留存率。极光推送客户端支持 Android, iOS 两个平台。使用的时候我们可以先去官网看开发文档,我是在我的新闻客户端中引用了这个sdk,下原创 2015-11-29 20:56:23 · 1266 阅读 · 0 评论 -
电商活动中刮刮卡的实现
一、实现原理Paint.setXferMode();a、绘制我们的圆形b、setXferMode(SrcIn)c、绘制矩形(正方形)图片二、主要思想:将一个view设计成多层:背景层,含中奖信息等;遮盖层,用于刮奖,使用关联一个Bitmap的Canvas在该Bitmap上,使用它的canvas.drawPath的api来处理原创 2016-01-20 22:13:42 · 1394 阅读 · 0 评论 -
安卓图像处理入门教程
第1章 图像处理概念介绍1、RGBA模型分析RGB:red,green,blue,alpha色相:物体传递的颜色饱和度:颜色的灰度,从0(灰)-100%亮度:颜色的相对明暗程度ColorMatrix setRotate() setSaturation() setScale() postConcat()第2章 颜色矩阵变换与实例图片中矩阵的作用通常用于初始化颜色矩阵 第3章 像素点分析原创 2016-01-05 16:15:45 · 1255 阅读 · 0 评论 -
Android系统的安全设计与架构
Android系统的安全设计与架构一、安全策略1、Android 的总体架构由5个主要层次上的组件构成,这5层是:Android应用层、 Android框架层、Dalvik虚拟机层、用户空间原生代码层和Linux内核层。 2、安全边界,有时也会称为信任边界,是系统中分隔不同信任级别的特殊区域。 一个最直接的例子就是内核空间与用户空间之间的边界。内核空间中的 代码可以对硬件执行一些底层操原创 2016-01-22 13:35:11 · 4450 阅读 · 0 评论 -
二维码扫描&集合排序
一、二维码扫描机制二维条码/二维码(2-dimensional bar code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有原创 2015-12-01 16:16:22 · 1767 阅读 · 0 评论