Android
刘元涛
活着只为改变世界
展开
-
Service的远程调用
在Andorid平台中,各个组件运行在自己的进程中,他们之间是不能相互访问的,但是在程序之间是不可避免的要传递一些对象,在进程之间相互通信。为了实现进程之间的相互通信,Andorid采用了一种轻量级的实现方式RPC(Remote Procedure Call 远程进程调用)来完成进程之间的通信,并且Android通过接口定义语言(Andorid Interface Definition L转载 2016-01-09 10:17:52 · 395 阅读 · 0 评论 -
浅谈3大类菜单
在Android系统中,菜单可以分为三类:选项菜单(Option Menu),上下文菜单(Context Menu)以及子菜单(Sub Menu)。一.选项菜单(Option Menu)创建选项菜单的步骤:1.覆盖Activity的onCreateOptionMenu(Menu menu)方法,当菜单第一次被打开时调用2.调用Menu的add( )方法添加菜单项(M转载 2016-01-09 10:17:27 · 526 阅读 · 0 评论 -
浅谈Toast
一.Toast的简介 Toast是Android中一种提供给用户简短信息的视图,该视图已浮于应用程序之上的形式呈现给用户。因为它并不获得焦点,即使用户正在输入什么也不会受到影响。它的目标是尽可能已不显眼的方式,使用户看到你提供的信息。显示的时间是有限制的,过一段时间后会自动消失,不过Toast本身可以控制显示时间的长短。二.Toast的常用方法int转载 2016-01-09 10:17:11 · 433 阅读 · 0 评论 -
Activity属性介绍
android:allowTaskReparenting=["true" | "false"] 是否允许activity更换从属的任务,比如从短信息任务 切换到浏览器任务。 android:alwaysRetainTaskState=["true" | "false"] 是否保留状态不变,比如切换回home, 再从新打开, activity处于最后的状态 android:c原创 2016-01-09 10:16:46 · 426 阅读 · 0 评论 -
Activity的生命周期浅析
1.Android系统中Activity作为Activity栈(Stack)被管理的,大家都知道栈的特点是先进后出,所以当前活动的Activity处于栈顶,之前非活动的Activity被压入栈底,等待是否可能被恢复为活动状态。Android API中所提供的Activity生命周期图:2.下面的整个Activity生命周期中的所有方法,我们可以根据程序的需要来覆盖相应的方法原创 2016-01-09 10:16:26 · 361 阅读 · 0 评论 -
Android布局属性详解
RelativeLayout用到的一些重要的属性:第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInparent 相对于父元素完全居中 android:layout_alignParentBotto原创 2016-01-09 10:16:06 · 247 阅读 · 0 评论 -
Button事件实现方法的总结
下面介绍Button事件实现的两种方法main.xmlxml version="1.0" encoding="utf-8"?> LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_widt转载 2016-01-09 10:15:43 · 508 阅读 · 0 评论 -
学Android开发的人可以去的几个网站
1、anddev国外非常好的一个Android开发者论坛,论坛版块划分完全面向开发者,从入门到进阶话题很全面,版主的水平也非常高,经常会出一些教程。地址:http://www.anddev.org2、 helloAndroid以教程为最大特色的国外网站对大家系统学习Android知识非常有帮助地址:http://www.helloan转载 2016-01-09 10:15:31 · 367 阅读 · 0 评论 -
Android 中使用ListView和CheckBox进行批量操作
在使用ListView时,一般为了性能的提升,都会使用ViewHolder,也就是Item的View实现复用。现在的问题是,当在ListView的Item中包含CheckBox,并且CheckBox的事件处理监听器是holder.checkbox.setOnCheckedChangeListener()时,会出现第一项开始未选中,当第二项选中时第一项也跟着选中,这显然不是我们想要的结果。转载 2016-01-09 10:15:17 · 440 阅读 · 0 评论 -
Android Volley 框架的使用
为什么要使用Volley框架 开发android应用很多时候都要涉及网络操作,Android SDK中提供了HttpClient 和 HttpUrlConnection两种方式用来处理网络操作,但当应用比较复杂的时候需要我们编写大量的代码处理很多东西:图像缓存,请求的调度等等;而Volley框架就是为解决这些而生的,它与2013年Google I/O大会上被提出:使得And转载 2016-01-09 10:14:46 · 991 阅读 · 0 评论 -
Android Volley框架使用详解
简介Volley是一个由Google官方推出的网络通信库,它使得Android进行网络请求时更加方便、快速、健壮,同时对网络图片加载也提供了良好的支持。volley使用1、获取volley源码(需要翻墙访问)$ git clone https://android.googlesource.com/platform/frameworks/volley$ cd volle转载 2016-01-09 10:14:19 · 285 阅读 · 0 评论 -
Android常见工具类封装
MD5加密import android.annotation.SuppressLint;import java.security.MessageDigest;public class MD5 { @SuppressLint("DefaultLocale") public static String hex(byte[] array) { S原创 2016-01-09 10:13:49 · 1809 阅读 · 0 评论 -
Android Volley框架的使用之图片的三级缓存策略(内存LruCache+磁盘DiskLruCache+网络Volley)
在开发安卓应用中避免不了要使用到网络图片,获取网络图片很简单,但是需要付出一定的代价——流量。对于少数的图片而言问题不大,但如果手机应用中包含大量的图片,这势必会耗费用户的一定流量,如果我们不加以处理,每次打开应用都去网络获取图片,那么用户可就不乐意了,这里的处理就是指今天要讲的缓存策略(缓存层分为三层:内存层,磁盘层,网络层)。 关于缓存层的工作,当我们第一次打开应用获取图片时,先到网转载 2016-01-09 10:13:28 · 480 阅读 · 0 评论 -
浅谈显示Intent和隐式Intent
Intent寻找目标组件的两种方式:显式Intent:通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的。隐式Intent:通过Intent Filter来实现的,它一般用在没有明确指出目标组件名称的前提下,一般是用于在不同应用程序之间。一.显式Intent 一般情况下,一个Android应用程序中需要多个屏幕,即转载 2016-01-09 10:18:07 · 421 阅读 · 0 评论 -
BroadcastReceiver简介和注册方式
一.BroadcastReceiver简介 BraodcastReceiver(广播接收器)是为了实现系统广播而提供的一种组件,它和事件处理机制类似,但是事件处理机制是程序组件级别的,而广播事件处理机制是系统级别的。比如,我们可以发出一种广播来测试手机电量的变化,这时候就可以定义一个BraodcastReceiver来接受广播,当手机电量较低时提示用户。我们既可以用Intent来启动转载 2016-01-11 11:18:22 · 321 阅读 · 0 评论 -
数据存取之Preference浅析
一.Preference的简介 Preference(配置)提供了一种轻量级的数据存取方法,主要应用于数据比较少的配置信息。它以“key-value”(是一个Map)对的方式将数据保存在一个XML配置文件中,例如,手机的开机问候语,可以将其以Preference方式来进行配置。也可以保存一些用户个性化设置的字体、颜色、位置等参数信息。二.Preference存取数据的方法使用到的转载 2016-01-11 11:18:38 · 488 阅读 · 0 评论 -
Android Studio使用心得
说实话 开始接触这个工具 真的觉得很恶心 毕竟大陆被墙 很多东西用起来不是很方便 而且Eclipse转到Android Studio还是一个跨度 废话不多说 下面 讲下我遇到的问题1. 安装的时候(Setup Wizard - Download Components) 这个要下载很长时间 甚至下载不了 (PS: 这个选择并下载2.25G的组件是studio的一个bug,评论里有人提转载 2016-06-15 09:56:47 · 452 阅读 · 0 评论 -
15 个 Android 通用流行框架大全
1. 缓存DiskLruCache Java实现基于LRU的磁盘缓存2.图片加载Android Universal Image Loader 一个强大的加载,缓存,展示图片的库Picasso 一个强大的图片下载与缓存的库Fresco 一个用于管理图像和他们使用的内存的库Glide 一个图片加载和缓存的库转载 2016-05-29 18:22:24 · 402 阅读 · 0 评论 -
picasso-强大的Android图片下载缓存库
原文地址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0731/1639.htmlpicasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。仅仅只需要一行代码就能完全实现图片的异步加载:Picass转载 2016-05-26 15:16:24 · 307 阅读 · 0 评论 -
2015最流行的Android组件、工具、框架大全
Android 是目前最流行的移动操作系统之一。 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生了一大批的优秀的组件。本文试图将目前流行的组件收集起来以供参考, 如果你发现本文还没有列出的组件,欢迎在评论中贴出来,我会定期的更新本文。部分图片需要翻墙才能显示很好的中文教程Google Android官方培训课程中文版转载 2016-05-26 12:37:33 · 1291 阅读 · 0 评论 -
整理下 Intent 中文API
常见的Activity Action Intent常量ACTION_MAINandroid.intent.action.MAIN应用程序入口ACTION_VIEWandroid.intent.action.VIEW显示数据给用户ACTION_ATTACH_DATAandroid.intent.action.ATTACH_DATA指明附加信息给其他地方的一些数据ACTION_E转载 2016-01-14 20:45:19 · 451 阅读 · 0 评论 -
Gradle for Android
原文地址:http://segmentfault.com/a/1190000004229002segmentfault和stack overflow都是不错的地方Gradle for Android 第一篇( 从 Gradle 和 AS 开始 )如果你是名Android开发新手,或者是名从eclipse切换到Android studio的新手,那么我强烈建议您f转载 2016-01-13 10:23:35 · 1294 阅读 · 0 评论 -
Android 4.4 KitKat NotificationManagerService使用详解与原理分析
转载请务必注明出处:http://blog.csdn.net/yihongyuelan概况 Android在4.3的版本中(即API 18)加入了NotificationListenerService,根据SDK的描述(AndroidDeveloper)可以知道,当系统收到新的通知或者通知被删除时,会触发NotificationListenerServic转载 2016-01-13 10:10:10 · 1146 阅读 · 0 评论 -
Android service 详解
作为一款多任务操作系统,如果不能运行后台服务,显然说不过去,Android 当然提供了运行后台程序的方法。而且非常简单易用,只不过有一些小问题需要注意,这个主题分为两部分,第一部分是如何实现一个Service以及他的生命周期,第二部分是对于一个个后台服务应该注意的事项。我们开始吧!创建服务类所谓的服务,在Android里被称做 Service,只要继承 android.app.Se原创 2016-01-13 10:02:18 · 297 阅读 · 0 评论 -
Android中Service 详解
原文地址:http://developer.android.com/guide/components/services.htmlService是Android中四大组件之一,在Android开发中起到非常重要的作用,先来看一下官方对Service的定义:A Service is an application component that can perform long-run翻译 2016-01-13 10:01:54 · 328 阅读 · 0 评论 -
Android中BroadCastReceiver详解
BroadcastReceiver 在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver是对发送出来的 Broadcast进行过滤接受并响应的一类组件。下面将详细的阐述如何发送Broadcast和使用BroadcastReceiver过滤接收的过程: 首先在需要发送信息的地方,把要发送的信息和用于过滤的原创 2016-01-13 09:58:49 · 386 阅读 · 0 评论 -
Android广播机制
1.Android广播机制概述Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器)。广播作为Android组件间的通信方式,可以使用的场景如下:1.同一app内部的同一组件内的消息通信(单个或多个线程之间);2.同一app内部的不同组件之间的消息通信(单个进程);3.同一app具有原创 2016-01-13 09:57:40 · 341 阅读 · 0 评论 -
Android通知之Notification的多种用法
我们在用手机的时候,如果来了短信,而我们没有点击查看的话,是不是在手机的最上边的状态栏里有一个短信的小图标提示啊?你是不是也想实现这种功能呢?今天的Notification就是解决这个问题的。 我们也知道Android系统也是在不断升级的,有关Notification的用法也就有很多种,有的方法已经被android抛弃了,现在我实现了三种不同的方法,并适应不同的android版原创 2016-01-13 09:51:55 · 479 阅读 · 0 评论 -
数据存取之File浅析
Android系统中提供了一种文件读写的方法,可以将一些数据以文件的形式保存在设备中。比如一些word文档,PDF文档,图片,音频,视频文件等。使用文件读写方法的步骤:1.调用Context.openFileInput()方法获得Java文件输入流(FileInputStream)2.调用Context.openFileOutput()方法获得java文件输出流(FileO转载 2016-01-11 11:18:52 · 307 阅读 · 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.apk原创 2016-01-09 10:13:05 · 329 阅读 · 0 评论 -
Android应用权限管理总结
访问登记属性android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限获取错略位置android.permission.ACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户错略的经纬度信息,定位精度大概误差在30~1500米获取精确位置原创 2016-01-09 10:09:59 · 1166 阅读 · 0 评论 -
浅析Android中的消息机制
在分析Android消息机制之前,我们先来看一段代码:[java] view plaincopypublic class MainActivity extends Activity implements View.OnClickListener { private TextView stateText;转载 2016-01-09 10:09:28 · 275 阅读 · 0 评论 -
Android设计中的.9.png与Android Studio中的设置
在Android的设计过程中,为了适配不同的手机分辨率,图片大多需要拉伸或者压缩,这样就出现了可以任意调整大小的一种图片格式“.9.png”。这种图片是用于Android开发的一种特殊的图片格式,它的好处在于可以用简单的方式把一张图片中哪些区域可以拉伸,哪些区域不可以拉伸设定好,同时可以把显示内容区域的位置标示清楚。本文结合一些具体的例子来看下.9.png的具体用法。首先看下普通的.p转载 2016-01-05 13:08:25 · 1103 阅读 · 0 评论 -
Android Studio问题解决系列—iCCP: Not recognizing known sRGB profile
1. 问题描述 在Android Studio 1.2.2下编译期间,出现了下面警告信息: ...\res\drawable-hdpi\add_green.png: libpng warning: iCCP: Not recognizing known sRGB profile that has been edited baidu和google,有一转载 2016-01-05 13:07:19 · 1193 阅读 · 0 评论 -
Android Studio问题解决系列—Resources中getDrawable(int)过时
今天在Android Studio 1.2.2中编译代码时遇到Resources中getDrawable(int)已过时的警告信息: Warning:(133, 52) java: android.content.res.Resources中的getDrawable(int)已过时 查看[1]可总结出以下信息:Resources类中有两个方法在A转载 2016-01-05 13:05:55 · 4942 阅读 · 0 评论 -
Android Studio问题解决系列—HAX is not working
1. 问题描述 在Windows环境下Android Studio 1.2.2中运行时,出现下面错误信息: HAX is not working and emulator runs in emulation mode emulator: The memory needed by this AVD exceeds the max specified in转载 2016-01-05 12:32:49 · 2161 阅读 · 0 评论 -
android webkit HTML5 video研究
摘要:本文主要介绍HTML5 video在android2.2中实现的主要架构和程序流程。 一、实现HTML5 video主要的类1. 主要类结构及介绍 (1) HTMLElement类不是最上层类,其父类可追到为Node类.为了表述方便省去了上面的类继承结构.该类是一个通用基类,大部分HTML元素都需要继承该类. (2)MediaPlayerClient原创 2014-07-15 08:53:48 · 794 阅读 · 0 评论 -
Android AVD创建及设置中各参数详解
Name:自定义虚拟的名称,不能有空格或者其他非法字符,否则不能创建,即Creat AVD不能高亮点击。Target:选择要运行的android 版本(也可理解为内核?),此处有两个版本,取决于你在最初时下载的选择,个人理解这两个同样为2.2版本差异在从名称上不难理解,一个是优化后的内核包,一个是google原生态的,当然这两个都是Google原版本,未被做过其他改动,通过查看img以及表原创 2014-07-15 08:54:42 · 1402 阅读 · 0 评论 -
使用HTML5开发Android本地应用
HTML5是现在最热门的技术之一,Android自带的WebKit浏览器对于HTML5有着不错的支持,而各种浏览器的最新版本都开始普遍的支持HTML5。使用HTML5开发手机应用的主要好处有两个:一个是应用可以跨平台,包括不同的手机平台和PC;二是可以从服务器下载应用的内容,但是不依赖于后台Server也可以运行,可以把Web应用和本地应用更好的结合在一起。这一系列文章的目的在于研究和实验转载 2014-07-15 08:59:43 · 1188 阅读 · 0 评论 -
Android 服务与广播笔记
广播广播的概念 现实:电台通过发送广播发布消息,买个收音机,就能收听Android:系统在产生某个事件时发送广播,应用程序使用广播接收者接收这个广播,就知道系统产生了什么事件。 Android系统在运行的过程中,会产生很多事件,比如开机、电量改变、收发短信、拨打电话、屏幕解锁IP拨号器 原理:接收拨打电话的广播,修改广播内携带的电话号码 * 定义广播接收者接收打电话广播publ原创 2016-01-16 14:17:34 · 773 阅读 · 0 评论