android
文章平均质量分 69
javawebsoa
这个作者很懒,什么都没留下…
展开
-
Android入门进阶教程(1)-android扫盲
首先Android是一个开放的移动设备平台,包括操作系统,中间件和关键应用软件堆栈。 它基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google开发,后由开放手机联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux内核工作为基础,只提原创 2013-05-30 13:42:35 · 1246 阅读 · 4 评论 -
Android入门进阶教程(2)-windows 开发环境的搭建
(1)操作系统方面Windows XP(32位),Vista的(32 - 位或64位),或Windows 7(32 - 位或64位) Mac OS X 10.5.8或更高版本(仅适用于x86)Linux(Ubuntu Linux上) ·GNU(编译器集合) C库(glibc)2.7或更高版本是必需的。 ·在Ubuntu Linux 8.04版或原创 2013-05-30 13:45:06 · 1301 阅读 · 6 评论 -
Android入门进阶教程(3)-linux 开发环境的搭建
1,首先讲一下在Linux下开发有什么优势。现在的Linux已经不再那么神秘了,从最初的内核应用,到现在的进入寻常百姓家。从眼花缭乱的命令行操作,到现在丰富的界面化处理。但唯一不变的是 强大的内存的管理和进程管理方案,基于权限的安全理念,稳定的性能。那在Linux下开发android有什么优势呢?Android是基于Linux内核的,打个比方在windows下开发就好比 两个不同国家的人,原创 2013-05-30 13:47:17 · 1568 阅读 · 6 评论 -
Android入门进阶教程(4)-android hello world开发
1.构建一个helloworld的android程序非常简单,直接new 一个android的项目,直接运行,一个helloworld的项目就完成了。这一篇主要详细讲一下android的项目目录结构以及源码关联。看图: 相对于J2EE项目结构的灵活,Android项目的结构显得比较固定,只要你弄清楚每个资源文件里面该放什么东西,就不会出现J2EE中,资源放错地方not found的原创 2013-05-30 13:49:05 · 1572 阅读 · 3 评论 -
Android入门进阶教程(5)-android 常用组件
1,android编码规范Android官方并没有给出相应编码规范。以下都是我从源码 、示例中总结的所谓规范。若公司有相应规范以公司为准。 首先从布局文件说起,布局文件名称的定义必须为小写字母,否者无法生成R类,尽量不要用缩写。以表达清楚该文件用途为本,通常情况下用下划线连接各语义单词,例如dialog_title_icons.xml 或者list_menu_item_checkbox原创 2013-05-30 13:51:13 · 1764 阅读 · 3 评论 -
Android入门进阶教程(6)-常用组件 ListView、GridView
1,ListView 是android开发中最常用的控件之一,一般构成列表包括三个元素,ListView:用来展示列表的视图、Adapter:数据与视图连接的桥梁、Data:具体的数据包括 字符串 图片 或者控件。 适配器一般有以下几种类型 ArrayAdapter:Android中最简单的一种适配器,专门用于列表控件。只显示一行数据。 SimpleAdapt原创 2013-05-30 13:52:30 · 1559 阅读 · 4 评论 -
Android入门进阶教程(7)-常用组件 TabHost、Gallery
1,TabHost 提供 Tab 页的窗口视图容器,它有俩个 children,一组是用户可以选择指定 Tab 页 的标签,另一组是 FrameLayout 用来显示该 Tab 页的内容。个别元素通常控制使用这个 容器对象,而不是设置在子元素本身的值。 常用方法:addTab(TabHost.TabSpec tabSpec):添加一项 Tab 页原创 2013-05-30 13:53:29 · 1922 阅读 · 5 评论 -
Android入门进阶教程(8)-常用组件 打电话,发短信简单应用 &单元测试
1,本章是android入门最后一篇,从后面开始将进入进阶阶段。我也会加快更新速度。但愿能保持每天三篇博文的数量。但是是在保证质量的前提下。后面我还会发布一些实际开发中用到的应用案例。敬请关注!应用组件是一个android应用程序的重要基石。每个组件的应用角度不同,各自负责所特有的功能。并非所有的组件都有实际的切入点,或许与别的组件相互依赖。但都作为一个独立的实体存在,起着特定的作用。有四种不原创 2013-05-30 13:55:15 · 1667 阅读 · 4 评论 -
Android入门进阶教程(10)-Xml解析
在Android程序中,Xml解析与Java中几乎相同,最常用的有SAX,DOM,PULL 三种解析方式。Android中内置了pull解析方式。这也是android推荐的解析方式。下面我们就看下这三种的用法,与不同1)SAX:(Simple APIfor XML)这种解析方式基于事件的模型。通俗的讲就是XML文件在加载的过程中,加载到不同节点会相应触发不同方法来处理。它属于一次加载。它可以处原创 2013-05-30 13:57:24 · 1382 阅读 · 3 评论 -
Android入门进阶教程(9)-输入输出流
首先让我们回顾一下JavaIO。看图: 看到这么多流,是不是头都大了,当年我学这块的时候,心想什么玩意,这流那流的。什么时候该用什么流?输入流和输出流经常弄混,不知道什么时候该用输出?什么时候该用输入?接下来看图 :上面这张图说明了最基本的输入,输出。当然我们的数据源方向不一定只有文件,或许是内存或者网络。接下来说一下什么是字节流,字符流。原创 2013-05-30 13:56:38 · 1747 阅读 · 4 评论 -
Android入门进阶教程(11)-远程图片获取和Xml解析
对于客户端——服务器端应用,从远程获取图片算是经常要用的一个功能,而图片资源往往会消耗比较大的流量,对应用来说,如果处理不好这个问题,那会让用户很崩溃,不知不觉手机流量就用完了,等用户发现是你的应用消耗掉了他手机流量的话,那么可想而知你的应用将面临什么样的命运。另外一个问题就是加载速度,如果应用中图片加载速度很慢的话,那么用户同样会等到崩溃。那么如何处理好图片资源的获取和管理呢?原创 2013-06-01 18:21:39 · 1773 阅读 · 3 评论 -
Android入门进阶教程(12)-SystemService详解
SystemServer是Android系统的一个核心进程,它是由zygote进程创建的,因此在android的启动过程中位于zygote之后。android的所有服务循环都是建立在 SystemServer之上的。在SystemServer中,将可以看到它建立了android中的大部分服务,并通过ServerManager的add_service方法把这些服务加入到了ServiceManager原创 2013-06-01 18:23:15 · 1839 阅读 · 6 评论 -
Android入门进阶教程(13)-ServiceManager服务管理详解
ServiceMananger是android中比较重要的一个进程,它是在init进程启动之后启动,从名字上就可以看出来它是用来管理系统中的service。比如:InputMethodService、ActivityManagerService等。在ServiceManager中有两个比较重要的方法:add_service、check_service。系统的service需要通过add_servi原创 2013-06-01 18:24:13 · 1838 阅读 · 3 评论 -
Android入门进阶教程(15)-进程创建zygote 详解
在android中,应用程序的入口是ActivityThead中的main函数,那么之后系统是怎样为应用程序创建进程的呢?SystemService又是怎样创建的?答案是:zygotezygote翻译成中文是受精卵的意思,名字比较奇怪、但是很有意思。在android中,大部分的应用程序进程都是由zygote来创建的,为什么用大部分,因为还有一些进程比如系统引导进程、init进程等不是有zygo原创 2013-06-01 18:27:44 · 1744 阅读 · 7 评论 -
Android入门进阶教程(17)-WindowManager 窗口管理介绍
其实在android中真正展示给用户的是window和view,activity在android中所其的作用主要是处理一些逻辑问题,比如生命周期的管理、建立窗口等。在android中,窗口的管理还是比较重要的一块,因为他直接负责把内容展示给用户,并和用户进行交互。响应用户的输入等。在讲窗口管理时,有必要先说下ViewManager这个接口,这个接口主要有以下的实现子接口和实现类,分别是:W原创 2013-06-01 18:29:38 · 1505 阅读 · 3 评论 -
Android入门进阶教程(19)-PowerManager 与电源管理
PowerManager这个类主要是用来控制电源状态的. 通过使用该类提供的api可以控制电池的待机时间,一般情况下不要使用。如果确实需要使用,那么尽可能的使用最低级别的WakeLocks锁。并且确保使用完后释放它。你可以通过context.getSystemService(Context.POWER_SERVICE)的方式获得PowerManager的实例。在PowerManager中,最主要的原创 2013-06-01 18:30:46 · 1301 阅读 · 9 评论 -
Android入门进阶教程(14)-Binder进程通信介绍
Binder机制是android中实现的进程间通信的架构,它采用的是c/s架构,client通过代理完成对server的调用。ServiceManager既然这里提到了server,那么我们有必要先了解下在android中是怎么来管理server的。先来看一个重要的Native进程:ServiceManager,从名字可以看出来,这个是用来管理所有server的。在init进程启动之后,会原创 2013-06-01 18:26:59 · 1766 阅读 · 6 评论 -
Android入门进阶教程(16)-ActivityThead、ActivityManagerService 详解
在android中,Activity是四大组件中比较重要的一个(当然其他的也比较重要),那么android中是怎样管理这些activity的?应用的进程和主线程是怎么创建的,应用的消息循环又是在什么时候创建的?在这篇文章中将详细介绍: 先来看下涉及到的类,通过以下类图对整体先有个大概的印象: ActivityThread:ActivityT原创 2013-06-01 18:28:43 · 1509 阅读 · 5 评论 -
Android入门进阶教程(18)- Looper、MessageQueue、Handler 与消息循环
在android的activity中有各种各样的事件,而这些事件最终是转换为消息来处理的。android中的消息系统涉及到: * 消息发送 * 消息队列 * 消息循环 * 消息分发 * 消息读取 消息对应的重要类有MessageQueue、Looper、Handler,它们分别对应着消息队列、消息循环和消息处理。 Handler类:Handl原创 2013-06-01 18:30:09 · 1332 阅读 · 7 评论 -
Android 的网络编程(18)-监控四种网络状态
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限。 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 1)判断是否有网络连接 public boolean isNetworkConnected(Context context) { if (context原创 2013-06-11 00:16:29 · 4353 阅读 · 14 评论 -
Android 的网络编程(17)-android显示网络图片
Android手机操作系统已经出现就受到了用户的好评。各大手机厂商也开始利用这一开源的系统抓住商机,发展自己的产业。在这里先来了解一下这一操作系统的一个小技巧,有关Android显示网络图片的实现。在Android中显示一张网络图片其实是超级简单的,下面就一个非常简单的例子:Android显示网络图片Step1:1、创建你的Activity,本例中以View原创 2013-06-11 00:04:40 · 3653 阅读 · 5 评论 -
Android入门进阶教程(21)-通知管理器NotificationManager
通知:Notification 通知管理器:NotificationManager 1、使用Notification 和 NotificationManager的目的: * Broadcast Receiver没有提供可视化界面来显示广播信息; * Notification 和 NotificationManager 能实现可视化信息的显示; * 可以将显示的广播信息的内容原创 2013-06-04 11:46:05 · 1913 阅读 · 0 评论 -
Android入门进阶教程(20)-ContentProvider 数据共享
1、使用ContentProvider 共享数据: ContentProvider 类主要方法的作用如下: * public boolean onCreate(); -该方法在ContentProvider 创建后就会被调用,Android开机后,ContentProvider 在其它应用第一次访问时才会被创建; * public Uri insert(Uri uri,Co原创 2013-06-04 11:44:48 · 1805 阅读 · 0 评论 -
Android入门进阶教程(22)-系统广播 BroadcastReceiver详解
BroadcastReceiver :广播接收器 * 除了接收用户发送的广播消息之外,还有一个重要的功能:接收系统广播。通过监听系统, 广播可以在系统特定的时刻执行某些操作; 1、广播处理机制: * Android中的系统广播是广泛应用于应用程序之间通信的一种手段,它类似于事件处理机制,不同的地方就是广播处理的是系统级别的事件处理 过程,而一般事件是组件级别的; *原创 2013-06-04 11:47:28 · 1742 阅读 · 0 评论 -
Android入门进阶教程(23)-内存中读/取数据
在内存中读 写文件: 小贴士: * 获取内存中的根目录:Environment.getRootDirectory(); 写文件: /* 测试:将文件写入到内存中 */ Java代码 /* 默认的目录为:\data\data\com.test\files */ OnClickListener listener_write_rom = ne原创 2013-06-04 11:48:22 · 1838 阅读 · 1 评论 -
Android 的网络编程(2)-Http协议
基于Http协议 一般是发送请求到某个应用服务器。此时需要用到HttpURLConnection 先取得HttpURLConnection urlConn = new URL("http://www.google.com").openConnection(); 设置标志 urlConn.setDoOutput(true); urlConn.setDo原创 2013-06-04 20:04:48 · 4340 阅读 · 5 评论 -
Android 的网络编程(6)-天气预报的WebService简单例子
一、获取并使用KSOAP包在Android SDK中并没有提供调用WebService的库,因此,需要使用第三方的SDK来调用WebService。PC版本的WebService库非常丰富,但这些对Android来说过于庞大。适合手机的WebService客户端的SDK有一些,比较常用的是KSOAP2。KSOAP2 地址:http://code.google.com/p/ksoap原创 2013-06-04 20:18:30 · 3101 阅读 · 6 评论 -
Android 的网络编程(1)-socket的用法
基于socket的用法 服务器端: 先启动一个服务器端的socket ServerSocket svr = new ServerSocket(8989); 开始侦听请求 Socket s = svr.accept(); 取得输入和输出 DataInputStream dis = new DataInputStream(s原创 2013-06-04 20:04:10 · 5607 阅读 · 6 评论 -
Android 的网络编程(3)-HttpURLConnection接口
Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序。以下是本人在学习中的总结与归纳。HttpURLConnection接口 首先需要明确的是,Http通信中的POST和GET请求方式的不同。GET可以获得静态页面,也可以把参数放在URL字符串后面,传递给服务器。而POST方法的参数是放在Http请求中。因此,在编程之前,应当首先原创 2013-06-04 20:06:53 · 3844 阅读 · 4 评论 -
Android 的网络编程(4)-HttpClient接口
使用Apache提供的HttpClient接口同样可以进行HTTP操作。 对于GET和POST请求方法的操作有所不同。GET方法的操作代码示例如下:// http地址 String httpUrl = "http://192.168.1.110:8080/httpget.jsp?par=HttpClient_android_Get"; //Ht原创 2013-06-04 20:10:07 · 3510 阅读 · 6 评论 -
Android 的网络编程(5)-通过ksoap2调用webservice示例
package com.study.ws; import java.io.IOException; import org.ksoap2.SoapEnvelope; import org.ksoap2.SoapFault; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.Soa原创 2013-06-04 20:16:59 · 2852 阅读 · 8 评论 -
Android 的网络编程(7)-检测网络是否可用
在android程序中运行第一步就是检测当前有无可用网络 如果没有网络可用就退出程序 if (isConnect(this)==false) { new AlertDialog.Builder(this) .setTitle("网络错误") .setMessage("网络连接失败,请确认网络连原创 2013-06-05 21:30:38 · 2504 阅读 · 8 评论 -
Android 的网络编程(8)-文件上传功能
public class MainActivity extends Activity { private static final String TAG = "MainActivity"; private EditText timelengthText; private EditText titleText; private Edit原创 2013-06-05 21:35:19 · 2825 阅读 · 6 评论 -
Android 的网络编程(9)-流量统计TrafficStats类的使用
对于Android流量统计来说在2.2版中新加入了TrafficStats类可以轻松获取,其实本身TrafficStats类也是读取Linux提供的文件对象系统类型的文本进行解析。android.net.TrafficStats类中,提供了多种静态方法,可以直接调用获取,返回类型均为 long型,如果返回等于-1代表 UNSUPPORTED 当前设备不支持统计。 Java代码 static原创 2013-06-05 21:38:30 · 3313 阅读 · 8 评论 -
Android 的网络编程(10)-网络权限配置
Android开发应用程序时,如果应用程序需要访问网络权限,需要在 AndroidManifest.xml 中加入以下代码如果不知道放在哪个位置,那就放在前边好了。同样的如果用到其它的权限,也需要作出声明,部分权限列表如下:android.permission.ACCESS_CHECKIN_PROPERTIES允许读写访问”properties”表在 checkin原创 2013-06-06 22:44:03 · 3904 阅读 · 4 评论 -
Android 的网络编程(13)-Http post发送加密内容
package wizzer.cn.app; public class SecBase64 { private static final byte[] encodingTable = { (byte) 'A', (byte) 'B', (byte) 'C', (byte) 'D', (byte) 'E', (byte) 'F', (byte) 'G',原创 2013-06-06 22:47:35 · 4332 阅读 · 5 评论 -
Android 的网络编程(12)-Android定位功能(二)
在前文Android定位功能(一)中,已经大致介绍了一下在Android平台中,和定位功能相关的类,并举例获取了位置信息。但是前文是基于Criteria定制了一个标准,通过getBestProvider()方法由Android系统自动获取最符合Criteria的LocationProvider,从而实现了定位功能。这样的做法能最大限度的保证定位功能的可实现性,但是却无法保证获取到的位置信息有最大的原创 2013-06-06 22:46:32 · 2833 阅读 · 2 评论 -
Android 的网络编程(11)-Android定位功能
不说废话,直接说说实现android定位有关的API吧。这些API都在android.location包下,一共有三个接口和八个类。它们配合使用即可实现定位功能。三个接口:GpsStatus.Listener:这是一个当GPS状态发生改变时,用来接收通知的接口。GpsStatus.NmeaListener:这是一个用来从GPS里接收Nmea-0183(为海用电子设备原创 2013-06-06 22:45:27 · 2965 阅读 · 4 评论 -
andorid程序同时支持手机 平板电脑
原文链接:http://developer.android.com/guide/practices/tablets-and-handsets.html#Guidelines基本方针这里有一些指导将会帮助您创建一个提供优化的用户体验应用程序,无论是在在平板电脑还是在手机上:•* 在片段(fragmennts)基础上创建您的活动(activity)* 可以对不同翻译 2013-07-09 09:59:22 · 1961 阅读 · 2 评论 -
Android Support Library 介绍~在项目总如何使用android支持库
设置你的项目:1.使用SDK Manager下载Android Support包图1: Android SDK Manager,其中Android Support package已选中。2.在你项目的顶层目录下创建libs目录3.找到你想要引入库的JAR文件,然后将它复制到libs目录。例如:支持API Level 4及以上版本的库就位于/extras/androi翻译 2013-07-09 09:45:27 · 2294 阅读 · 0 评论