摘要:Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序。以下是本人在学习中的总结与归纳。1. HttpURLConnection接口 首先需要明确的是,Http通信中的POST和GET请求方式的不同。GET可以获得静态页面,也可以把参数放在URL字符串后面,传递给服务器。而POST方法的参数是放在Http请求中。因此,在编程之前,应当首先明确使用的请求方法,然后再根据所使用的方式选择相应的编程方式。 HttpURLConnection是继承于URLConnection类,二者都是抽象类。其对象主要通过URL的openConnection方法获
阅读全文
摘要:android的后台运行在很多service,它们在系统启动时被 SystemServer开启,支持系统的正常工作,比如MountService监听是否有SD卡安装及移除,ClipboardService提供剪 切板功能,PackageManagerService提供软件包的安装移除及查看等等,应用程序可以通过系统提供的Manager接口来访问这些 Service提供的数据,以下将说明他们的工具流程 2. 举例说明基本流程 以android系统支持sensor(传感器)实例来说明框架层的service和manager是如何配合工作的 1) 什么是sensor sensor是传感器,...
阅读全文
摘要:Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance。以下逐一举例说明他们的区别:standard:Activity的默认加载方法,即使某个Activity在Task栈中已经存在,另一个activity通过Intent跳转到该activity,同样会新创建一个实例压入栈中。例如:现在栈的情况为:A B C D,在D这个Activity中通过Intent跳转到D,那么现在的栈情况为: A B C D D 。此时如果栈顶的D通过Intent跳转到B,则栈情况为:A B C D D B。此时如果依次按返回键,D D C
阅读全文
摘要:Android五个进程等级 1、前台进程(Foreground process): 用户当前工作所需要的。一个进程如果满足下列任何条件被认为是前台进程: 正运行着一个正在与用户交互的活动(Activity对象的onResume()方法已经被调用)。 寄宿了一个服务,该服务与一个与用户交互的活动绑定。 有一个Service对象执行它的生命周期回调(onCreate()、onStart()、onDestroy())。 有一个BroadcastReceiver对象执行他的onReceive()方法。 在给定时间内仅有少数的前台进程存在。仅作为最后采取的措施他们才会被杀掉——如果内存太低...
阅读全文
摘要:不管是MFC,还是linux,还是android,UI开发都是如下两大核心机制:第一个是消息循环,第二个是界面组织结构。围绕着这些,衍生出来的OpenGL,SurfaceView,SurfaceFinger等都是为这两大机制服务的。打一个比方。消息循环是UI中的发动机。界面组织结构就是UI的设计结构。而其他的东西,则是建立在这些基础之上的。理解这两大块儿,那么android的UI基础就学得差不多了。这个时候可以结合一些例子,来做一些真正有意义的开发,例如UI特效啊。自定义动画啊。。。。也可以顺便把动画机制给理解吃透。接下来就学一下Canvas,SurfaceFlinger,Matrix,来做一
阅读全文
摘要:Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失。下面用一个实例来看看如何使用Toast。1.默认效果代码Toast.makeText(getApplicationContext(), "默认Toast样式",Toast.LENGTH_SHORT).show();2.自定义显示位置效果代码toast = Toast.makeText(getApplicationContext(),"自定义位置Toast", Toast.LENGTH_LONG)
阅读全文
摘要:最近在网上看到一篇介绍android window的requestWindowFeature()的使用方法,共享出来大家学习学习requestWindowFeature(Window.FEATURE_LEFT_ICON);setContentView(R.layout.dialog_activity);getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON,android.R.drawable.ic_dialog_alert);Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)我
阅读全文
摘要:什么是App Widget?App Widget是Cupcake(Android 1.5)所提供的一個功能,這是一個很實用而且能有很大創意想像空間的功能。什麼是App Widget呢?請看底下的操作示範。在Android桌面长按约3秒,出现一个选择,如图1。图1:新增项目至桌面2. 选择「Widget」,加入”HelloWidget”图2:加入自己设计的Widget桌面上出現了一个「Widget」图3:在Android桌面上出現我們自已設計的App Widget图4:加入了音樂撥放器App Widget至桌面這就是App Widget的应用,可以將一个小块程式(program piece)嵌入
阅读全文
摘要:最近看了下关于广播方面的东西,加深了理解,也纠正了自己以前的不正确的看法。 关于广播有2中注册方式,一种是在代码中注册,也叫动态注册,另一种是在AndroidManifest里面注册,也叫静态注册。 不管在哪个里面注册,都需要发送广播sendBroadcast()。广播发送的是一个Intent,intent里面一般是action。 如果是在代码里面注册,一般在onResume()方法里面注册。@Override protected void onResume() { // TODO Auto-generated method stub ...
阅读全文
摘要:1、首先我们要在Manifest.xml文件中配置一个<receiver/>标签,这个标签必须有一个android:name属性,值为继承自BroadcastReceiver类的接收器类,并复写onReceiver方法,在该方法中处理接收到广播后需要处理的事情!2、<receiver/>标签还有一个子标签为<intent-filter/>,这个标签很重要,是指定接收器需要接收哪种广播添加的监听器配置文件内容MyBroadCast是继承了BroadcastReceiver的类<receiver android:name="MyBroadCast
阅读全文
摘要:public boolean checkNetWorkStatus() { boolean netSataus = false; ConnectivityManager cwjManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); cwjManager.getActiveNetworkInfo(); if (cwjManager.getActiveNetworkInfo() != null)...
阅读全文
摘要:在 android 中,有以下几种资源类型,这些资源全放在 res 目录下面相应的子目录下面:字符串、颜色值、尺寸值、布尔值、整形值都放在 /res/values 目录下面,创建这值时,文件名并不重要,如创建一个颜色资源 “C.xml”,内容如下:<?xml version="1.0" encoding="utf-8"?><resources> <color name="red">#FFFF0000</color></resources>然后访问是通过 R.color.red
阅读全文
摘要:gravity 翻译成中文,就是重力、地心引力等,反证就是和力有关系的一个词,但是他娘的其实就是一个对齐方式,妈的,每个 GUI 框架都给自己发明一个对齐方式的单词,搞得真是头晕。 在一般的情况下,会有两个对齐属性,一个水平对齐,一个垂直对齐,但是在 android 里只有一个对齐属性,水平对齐和垂直对齐都设置在这个属性里。有以下值可以设置:值说明left左对齐center_horizontal水平居中对齐right水平右对齐fill_horizontal水平拉升,占满父空间top垂直上对齐center_vertical垂直居中对齐bottom垂直下对齐fill_vertical垂直拉升...
阅读全文
摘要:9图片绘制,就是把一张图片分成至少9份进行绘制,在这9份图片中,有没不进行任何的拉升,有些则根据需要进行一定的拉升,就个应用最常见的就是圆角按钮了,按钮的周围的4个角是不能拉升的,否则就会变成,如果使用 NinePatchDrawable 对象对图像进行绘制,就可以解决这个问题。 NinePatchDrawable 对象需要一个 PNG 图片,并且这个图片需要进行一些特殊的标识。android 的 SDK 的 TOOLS 目录下面提供了一个叫 draw9patch工具,专门用来处理给 PNG 加上特殊标识的功能。 在制作 PNG 文件的时候,需要给图片的周围预留一个像素的空白区域,好像没...
阅读全文
摘要:TransitionDrawable 的功能就是在两张图片之间实现淡入淡出效果,TrasnitionDrawable 有两个方法用来启动淡入淡出效果:startTransition: 从第一张图片过度到第二涨图片,就是第二张图片从透明变得不透明的过程,最终第二张图片覆盖了第一张图片reverseTransition: 从第二张图片过度到第一张图片,就是第二张图片从不透明变得透明的过程,最终第二张图片变得不可见,显示第一张图片。从上面两个方法的说明中可以看出,第一终片变始终都没有变,变化的只是第二张图片。还有一个 resetTranstion 方法,这个方法就是直接显示第一终图片,没有任何...
阅读全文
摘要:ColorDrawable 使用比较简单,就是一个使用单色填写整个画面的 Drawable 对象。使用起来很简单,在 XML 中定义:<resources> <drawable name="blue">#0000ff</drawable></resources>在XML布局文件中,使用 blue 来引用此颜色对象。------娇妻如云
阅读全文
摘要:BitmapDrawable 是一个可以把 png, jpg, gif 等格式的图片绘制到 Canvas 对象的对象。 我们把一个图片复制到 res/drawable目录下面,ANDROID 会自动编译这个图片,这个图片资源和这个 BitmapDrawable 是两个对象,BitmapDrawable 内部是引用了一个图片资源,并负责这个图片的绘制。 默认生成的 BitmapDrawable 对象都是以一种默认的行为进行绘制,我可可以更改一点属性以影响绘制的行为,如设置图片的透明度。如果一个图片总是以某种行为来绘制,我们就可以使用 XML 来创建一个 BitmapDrawable 对象,...
阅读全文