
【Android】
文章平均质量分 73
xiazdong
ECNU-SEI
展开
-
Android入门:SQLite
一、SQLite介绍SQLite是一个小型的内嵌于Android的数据库;我们不需要引入驱动即可访问它;SQLite可视化工具:SQLite Expert Professional 3;下载地址:http://www.kuaipan.cn/file/id_125546433842511875.htm二、预备阶段在本节中,我们会为操作数据库做准备,即本节并原创 2012-06-26 22:35:38 · 4958 阅读 · 2 评论 -
Android入门:Layout
AbsoluteLayout因为已被废除,因此不做介绍;只要存在界面,就会有布局的存在,就像Swing,虽然一个是桌面应用,一个是手机应用,但是他们都差不多。1.LinearLayout默认布局。组件的排列按照预先定义方向很有序的排列,类似于Swing中的FlowLayout;注意点:(1)可以在中添加原创 2012-06-23 16:53:42 · 6701 阅读 · 0 评论 -
Android入门:广播发送者与广播接收者
一、广播发送者&广播接收者介绍1.广播接收者广播接收者简单地说就是接收广播意图的Java类,此Java类继承BroadcastReceiver类,重写:public void onReceive(Context context,Intent intent),其中intent可以获得传递的数据;广播意图就是通过Context.sendBroadcast(Int原创 2012-07-20 21:26:32 · 194704 阅读 · 15 评论 -
Android入门:广播接收者应用(电话拦截器)
一、电话拦截器应用说明在我们输入完电话号码并拨打电话时,系统会发出一个有序广播(action="android.intent.action.NEW_OUTGOING_CALL"),并且预计会发送给电话拨号器应用的广播接收者,但是我们可以设置一个优先级更高的拦截器广播接收者(android:priority="1000"),使得在拨号器的广播接收者收到电话之前将电话清空,如图所示:原创 2012-07-21 21:41:09 · 13720 阅读 · 0 评论 -
Android入门:搭建环境、工程目录剖析、Activity生命周期
Android是在2007年11月5日google公司推出的基于Linux的操作系统;本意:机器人;AndroidSDK:开发工具包,类似于JDK,用Java语言编写程序;AndroidNDK:Native Development Kit , C++语言编写程序;AndroidSDK下载地址:http://developer.android.com/sdk/index.html原创 2012-03-28 23:45:27 · 2741 阅读 · 1 评论 -
Android入门:Activity生命周期
一、Activity生命周期介绍我们在学Java Web时会学到Servlet的生命周期,因此对生命周期的概念已经有一定了解,简单地说就是某个事物从出生到死亡的过程。Activity也存在声明周期,从Activity被创建到最后被销毁;Activity运行时可能会受到一些突发事件的影响,例如在使用Activity时突然来了一个电话,则Activity需要在生命周期函数中设置;下原创 2012-07-19 23:06:27 · 3159 阅读 · 0 评论 -
Android入门:隐式Intent
一、隐式意图介绍显式意图我们前面已经提到,形如:Intent intent = new Intent();intent.setClass(this,Other.class);//此句表示显式意图,因为明确设置激活对象为Other类startActivity(intent);顾名思义,隐式意图就是在不明确设置激活对象的前提下寻找最匹配的组件,举个例子,比如有5原创 2012-07-19 21:42:02 · 35945 阅读 · 6 评论 -
Android入门:Activity四种启动模式
一、启动模式介绍启动模式简单地说就是Activity启动时的策略,在AndroidManifest.xml中的标签的android:launchMode属性设置;启动模式有4种,分别为standard、singleTop、singleTask、singleInstance;讲解启动模式之前,有必要先讲解一下“任务栈”的概念;任务栈每个应用都有一个任务栈,原创 2012-07-16 23:48:46 · 14520 阅读 · 3 评论 -
Android入门:SharedPreferences
一、SharedPreferences应用场景SharedPreferences 用于保存参数;内部是以XML文件进行保存的,位于/data/data/package/shared_prefs目录中;二、SharedPreferences核心代码1.保存SharedPreferences preference = context.getSha原创 2012-06-25 21:07:53 · 1734 阅读 · 0 评论 -
Android入门:Handler
一、Handler介绍在一个线程中存在一个消息队列,当消息队列中存在消息时,Handler就会处理这些消息;我们考虑一下这种场景:我们要执行一个耗时很长的业务,执行完后要返回一个结果显示在TextView上,我们在主线程中执行这种业务是否合理呢?显然是不合理的,因此我们会想到把业务放到子线程中执行,但是Android有个规定:所有更新UI的操作全要在主线程中完成,因此我们要做的原创 2012-07-14 19:29:27 · 1961 阅读 · 1 评论 -
Android入门:Service入门介绍
一、Service介绍Service类似于Windows中的服务,没有界面,只是在后台运行;而服务不能自己运行,而是需要调用Context.startService(Intent intent);或Context.bindService(Intent intent)开启服务;服务分为两种:(1)访问者与服务无关,则关闭访问者之后,服务能够继续运行,使用start原创 2012-07-22 14:22:01 · 3750 阅读 · 1 评论 -
Android入门:绑定本地服务
一、绑定服务介绍前面文章中讲过一般的通过startService开启的服务,当访问者关闭时,服务仍然存在;但是如果存在这样一种情况:访问者需要与服务进行通信,则我们需要将访问者与服务进行绑定;如果使用Context.bindService()方法启动服务,则在服务未创建时,系统会调用服务的onCreate()方法,接着调用onBind()方法,这时就访问者与服务已经绑定原创 2012-07-22 18:16:25 · 8430 阅读 · 1 评论 -
Android入门:文件上传
文件上传分为两个部分:(1)服务器端:需要使用FileUpload+common.io实现文件的上传;(2)客户端:需要模拟文件上传的HTTP请求头;一、服务器端代码FileServlet.javapackage org.xiazdong.servlet;import java.io.File;import java.io.IOExceptio原创 2012-07-08 22:50:28 · 10506 阅读 · 3 评论 -
Android入门:发送HTTP的GET和POST请求
HTTP的请求详解在我的博客中已经讲解过:http://blog.youkuaiyun.com/xiazdong/article/details/7215296我在http://blog.youkuaiyun.com/xiazdong/article/details/7725867 中已经封装了一个HTTP请求的辅助类,因此可以很简单的发送GET、POST请求;如HttpRequestUtil.s原创 2012-07-07 10:38:19 · 36632 阅读 · 3 评论 -
Android入门:通过XML数据与服务器进行通信
一、与服务器通信类似于浏览器与服务器通信,Android应用也可以与Web服务器通信,比如Android应用可以访问Servlet、JSP、图片等等;Web服务器通过指定Content-Type可以指定返回的数据的类型,比如text/html表示网页,text/xml表示XML数据,image/jpeg为图片;二、通过XML让客户端和服务器交流数据原创 2012-07-06 07:38:37 · 6843 阅读 · 2 评论 -
Android入门:监听ContentProvider数据改变
一、监听ContentProvider主要步骤1.在ContentProvider类的insert\update\delete方法加入this.getContext().getContentResolver().notifyChange(URI,null);其中URI表示监听的URInull表示发送消息给任何人;2.在访问者的类中调用如下方法:context.g原创 2012-07-01 19:45:45 · 19424 阅读 · 2 评论 -
Android入门:通过JSON数据与服务器进行通信
我们完成“Android入门:通过XML数据与服务器进行通信“同样的功能,只是数据传输使用JSON而不是XML;注意点:(1)当返回JSON时,content-type为text/json;(2)通过JSON包进行解析JSON格式数据和生成JSON格式数据;(3)Android中已经集成了JSON的包;一、核心代码介绍服务器端核心代码:(1)JS原创 2012-07-06 22:25:56 · 22220 阅读 · 6 评论 -
Android入门:Pull解析XML
一、Pull解析器介绍pull解析类似于SAX\DOM,都是用来解析XML的方法;二、使用Pull解析器读取XML数据模板代码如下:XmlPullParser parser = Xml.newPullParser(); //创建一个PULL解析器parser.setInput(in,"UTF-8"); //读取的编码为UTF-8int原创 2012-06-25 20:52:44 · 5622 阅读 · 0 评论 -
Android入门:查看服务器图片应用
一、网络图片查看器需求 存在一个Web服务器,其中存在一个图片,在Android客户端能够访问这张图片并在Android客户端显示; 当点击“提交”后,则会显示指定服务器的图片;需要注意的一点是:我们不能使用localhost表示本机,而需要使用局域网的IP地址,否则会抛Connection confused异常;二、核心代码介绍 在AndroidManif原创 2012-07-05 23:05:52 · 4107 阅读 · 1 评论 -
Android入门:增删改查通讯录
一、通讯录应用介绍通讯录应用是Android自带的应用程序,我们看到此应用的时候,可能只认为这是一个应用,用数据库存储数据,但是实际上不是这样的。通讯录是ContentProvider的应用,通讯录由两部分组成:(1)com.android.providers.contacts的ContentProvider:真正存储数据的ContentProvider(2)com.and原创 2012-07-04 07:08:06 · 44396 阅读 · 18 评论 -
Android错误:The connection to adb is down, and a severe error has occured.
[2012-07-25 10:57:03 - Xxx] The connection to adb is down, and a severe error has occured.[2012-07-25 10:57:03 - Xxx] You must restart adb and Eclipse.[2012-07-25 10:57:03 - Xxx] Please ensure tha原创 2012-07-25 10:59:18 · 4951 阅读 · 2 评论 -
Android入门:通过AIDL进行进程间通信
一、AIDL介绍AIDL:Android Interface Definition Language,接口定义语言;顾名思义,就是定义接口的语言,即利用AIDL可以定义接口;AIDL简单地说就是进程间通信的方法,类似于Java中的RMI;AIDL利用Xxx.aidl文件定义接口,通常将此文件放在com.xiazdong.aidl中;AIDL文件的编写原创 2012-07-22 21:37:31 · 6265 阅读 · 2 评论 -
Android入门:多线程断点下载
一、多线程断点下载介绍所谓的多线程断点下载就是利用多线程下载,并且可被中断,如果突然没电了,重启手机后可以继续下载,而不需要重新下载;利用的技术有:SQLite存储各个线程的下载量,HTTP请求获得下载数据;二、辅助类介绍为了完成多线程断点下载我们需要预先编写一些辅助类:(1)DBOpenHelper(2)FileService:-Map get原创 2012-07-14 20:10:57 · 2653 阅读 · 0 评论 -
Android入门:多个Activity之间切换原理介绍
大家都知道,一个Activity是一个界面,多个Activity表示多个界面,而多个界面的切换在应用中是重要的,而我们前面学Intent时也知道了使用Intent进行切换;Intent用来激活组件并附带数据;多个Activitiy切换的实例已经有介绍过,http://blog.youkuaiyun.com/xiazdong/article/details/7664757此处只介绍原理及方法原创 2012-07-15 20:10:09 · 39346 阅读 · 3 评论 -
Android入门:ContentProvider
一、ContentProvider介绍 ContentProvider翻译为“内容提供者”;定义:指该应用包含一些方法,供外界访问,其他应用程序可以调用该方法,比如如果应用A创建了一个数据库“test.db”,默认是私有的,即其他应用程序不能对其进行操作,但是如果应用A使用了ContentProvider,则其他应用程序可以访问该数据库;用途:某个应用对外共享数据;注意点:原创 2012-07-01 17:39:59 · 4826 阅读 · 0 评论 -
Failed to install *.apk on device 'emulator-5554': timeout
错误提示:Failed to install helloworld.apk on device 'emulator-5554': timeout或者the user data image is used 原因:由于模拟器已经开启而没有关闭或者非法关闭引起的。解决方法:删除 C:\Documents and Settings\Administrator\.androi转载 2012-07-05 12:57:51 · 5340 阅读 · 2 评论 -
Android入门:向TextView添加滚动条
默认TextView如果在一屏幕显示不下的话,是不会有滚动条的,解决方法是在外面添加标签; <ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content" > <TextView android:layout_w原创 2012-07-05 23:11:25 · 14825 阅读 · 2 评论 -
Android入门:Intent入门(1)
一、Intent介绍如果Android要做什么事件,则肯定与Intent有关;Intent能够做的动作有很多,比如打电话动作、发短信动作、跳转界面动作等; 二、Intent继承结构java.lang.Object |- android.content.Intent 三、Intent应用1.打电话此处实现一个如下原创 2012-06-14 22:43:05 · 9075 阅读 · 1 评论 -
在Android工程中运行Java程序问题
不能在Android project中运行java程序,否则,出现如下错误:原创 2012-07-04 12:54:55 · 1601 阅读 · 2 评论 -
Android入门:部署时的常见错误
错误:Failure[INSTALL_FAILED_UPDATE_INCOMPATIBLE]原因:因为没有卸载干净。解决:在Android手机上,“设置”-->“应用程序”-->“管理应用程序”,卸载程序即可;错误:failure 【install-failed-already-exists】原因:在Android手机上已经存在该应用。解决:adb shell pm原创 2012-06-17 08:38:16 · 4954 阅读 · 0 评论 -
Android入门:Intent入门(2)
一、Intent与Activity应用 0.创建新的Activity步骤 在应用中创建新的Acitivity很常见;步骤1:创建一个class继承Activity 步骤2:在Android-manifest.xml中添加元素 比如创建了一个名为SubActivity的Activity,则需要声明如下: 1.最简单的跳转到新的Act原创 2012-06-14 23:08:28 · 17042 阅读 · 4 评论 -
Android入门:EditText
一、继承结构介绍android.view.View|-android.widget.TextView|-android.widget.EditText二、标签属性解析1. android:focusable如果为true,则表示默认获得焦点;如果为false,则表示默认不获得焦点;注意一点:如果设为false,则默认永远不会得到焦点!原创 2012-05-20 22:20:22 · 1677 阅读 · 0 评论 -
Android入门:Button
一、Button的继承结构java.lang.Object|-android.view.View|-android.widget.TextView|-android:widget.Button二、Button使用1.监听器android.view.View.OnClickListener btn.setOnClickLi原创 2012-05-22 23:18:27 · 2033 阅读 · 0 评论 -
Android入门:DDMS视图
一、进入DDMS perspective进入DDMS视图后,出现如下图所示:1.Devices:显示现在能够使用的设备,比如虚拟机或真机 ; 以及每个设备存在的程序;2.Emulator Control:能够给设备打电话,发短信;3.Logcat:类似于Java程序的Console,报错、显示信息都在此处显示;4.File Explore原创 2012-05-22 22:32:05 · 8531 阅读 · 0 评论 -
Android入门:TextView
一、设置部分字体的颜色通过SpannableStringBuilder style = new SpannableStringBuilder(CharSequence cs);style.setSpan(new ForegroundColorSpan(color), begin, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);tv.s原创 2012-05-19 23:58:37 · 1930 阅读 · 0 评论 -
Android入门:ImageView介绍
ImageView就是一个用来显示图片的视图;主要我们使用android:src="@drawable/aa"添加图片;<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/f原创 2012-06-23 16:55:51 · 1936 阅读 · 0 评论 -
Android入门:File文件存储
数据的存储有多种方式,比如数据库存储、SharedPreferences存储、文件存储等;这里我们将要介绍最简单的文件存储方式;文件存储简单的来说就是一般的JAVASE中的IO流,只是把他应用于Android手机中而已;一、文件存储核心代码文件存储(1)FileOutputStream out = context.openFileOutput(Strin原创 2012-06-24 15:32:33 · 52789 阅读 · 2 评论 -
Android入门:单元测试
一、Android的Junit测试一般的JUnit我们都用过,而针对Android的JUnit也是类似于这种,显示的结果也是绿条和红条。单元测试整体框架如下: 我们这里只介绍其中一个类:AndroidTestCase;二、AndroidTestCase 程序描述:新建一个Android项目:Activity,添加一个EditText,原创 2012-06-16 08:23:48 · 4866 阅读 · 1 评论 -
Android入门:ListView
一、ListView介绍 ListView是类似于将一个界面分为一行一行,如下图: ListView只是一个视图,而如果要在这个列表视图中显示数据,则必须要通过“Adapter”,我们通常有三种Adapter:(1)ArrayAdapter:每行只能是一个文本;(2)SimpleAdapter:此种方式不是很好,经过测试,只能显示一行数据;(3)继承BaseAdap原创 2012-05-04 21:26:44 · 4101 阅读 · 1 评论 -
Android入门:ListView(SimpleAdapter实现)
ListView是类似于将一个界面分为一行一行,如下图:注意:listView.getItemAtPosition(int pos)内部调用了adapter.getItem(int position)方法,而每种适配器返回的类型都是不一样的:当SimpleAdapter返回MapSimpleCursorAdapter返回Cursor;继承Ba原创 2012-07-01 00:30:08 · 34948 阅读 · 0 评论