随笔分类 - android
摘要:Android使用一个和其它平台基于硬盘文件系统相似的文件系统.这个课程描述了如何和在Android文件系统使用File APIs读和写文件.
一个File对象适用于读或者写从头到尾没用中断的大型数据.例如,适用于图片文件或者任何网络交换.
这节课程显示了如何在应用程序中执行基本的文件相关的任务.这个课程假设你熟悉基本的Linux文件系统和在java.io.中标准文件输入/输出APIs.
阅读全文
摘要:Android Menu在手机的应用中起着导航的作用,作者总结了5种常用的Menu。
阅读全文
摘要:public void closeInputMethod(){
try {
((InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
} catch (Exception e) { }finally{ }
}
阅读全文
摘要:启动其它Activity不是单向的。你也能启动其它Activity并获取一个返回结果。为了获取一个结果,调用startActivityForResult()方法(替代startActivity()方法)。
例如,你的应用程序能启动一个照相机应用程序,并获取捕捉的相片作为结果。或者,你可能启动People应用程序,为了用户选择一个联系人,并且你将会获取这个联系的的详细信息作为结果。
当然,这个响应Activity必须被设计来返回一个结果。当它执行的时候,它发送这个结果作为其它Intent对象。你的Activity在onActivityResult()回调方法中获取它。
注意:你能使用显示的或者隐式的意图,当你调用startActivityForResult()方法的时候。当启动一个你自己的Activity来获取一个结果的时候,你应该使用一个明确的意图来确保你获取获取期望的结果。
阅读全文
摘要:Android的一个非常重要的功能是,应用程序基于它要执行的一个“动作”想其它应用程序发送用户的能力。例如,如果你的应用程序要显示一个地图,你没有在你的应用程序中创建显示地图的Activity。相反,你使用一个Intent创建了请求查看地址。Android系统然后启动一个应用,它能在地图上显示地址。
阅读全文
摘要:本课将告诉你如何通过后台加载来加速应用启动和降低应用耗电。
后台跑服务
除非你做了特殊指定,否则在应用中的大部分前台操作都是在一个特殊的UI线程里面进行的。这有可能会导致一些问题,因为长时间运行的操作会影响到你应用的响应速度。为了避免这个问题,android框架提供了一系列帮助你在后台通过线程推迟加载的功能,被使用得最多的非IntentService莫属了。
本课将向你描述如何实现一个IntentService,发送请求操作并向其它组件报告结果。
阅读全文
摘要:添加一个apk都需要将LOCAL_PACKAGE_NAME的值添加到PRODUCT_PACKAGES才行。
而PRODUCT_PACKAGES一般在build/target/product/目录下的文件里都有定义
阅读全文
摘要:import android.os.storage.StorageManager;
String fileDir = null;
StorageManager storageManager = (StorageManager)mContext.getSystemService(Context.STORAGE_SERVICE);
if (null == storageManager) {
fileDir = Environment.getExternalStorageDirectory().getPath();
} else {
fileDir = storageManager.getDefaultPath();
}
if(fileDir.equals("/storage/sdcard1")){
showString = getString(
阅读全文
摘要:在Android开发中如果用eclipse开发的话,在配置的时候会有一个选项,Is library一直没有研究明白,经过上网查找,有人归纳了用法,归纳的很好作为保留。解决了我多个项目共享资源的好方法。
阅读全文
摘要:android组件的事件处理有2种方式:
1、基于监听器的事件处理方式:先定义组件,然后为组件设定监听器。
详见http://blog.csdn.net/jediael_lu/article/details/11555497
2、基于回调的事件处理方式:让每一个组件继承UI类,并重写该类的事件处理方法。当该组件遇到某事件时,即会触发相应的事件处理方法。
阅读全文
摘要:以上方法均通过测试,tv_result为自设定的TextView。
阅读全文
摘要:一:Notification
1.NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
2. notification.setLatestEventInfo(this, "国安部给你发短信!", "你被通辑啦~~~", contentIntent);
2.1: PendingIntent contentIntent = PendingIntent.getActivity(this, 0, intent, 0);
2.1.1: Intent intent = new Intent();
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:110"));
3.nm.notify(0,notification);
3.1:Notification notification = new
Notification(R.drawab
阅读全文
摘要:设想,Apple和Grape都有相同的say()方法,但由于它们并没有共同的商业逻辑,这时该怎么办?
设想,要在SinaWeibo和TencentWeibo之间打通数据的获取方法,如getId()、getNickName()等方法,但它们开放的第三方API接口并不一致,这时该怎么办?如何提供出通用方法供团队协作使用?
对于第一个设想,想解决问题,就要找到它们目前的共通点,它们都是水果,所以抽象出一个水果接口,利用工厂类生产水果。
对于第二个设想,想解决问题,同样,要建立一个中间“工厂”,它们都实现这个工厂提供的接口,逻辑不就能统一了吗。(想一下接口的作用就知道了。)
贴出“静态工厂模式”的定义和理解:
阅读全文
摘要:1.由路径获取Url
2.使用url打开HttpURLConnection连接
3.根据路径查找本地sd卡是否有缓存文件,如果文件存在,发送最后修改时间
File file = new File("/mnt/sdcard/" + URLEncoder.encode(path, "UTF-8"));
conn.setIfModifiedSince(file.lastModified());
4.得到响应返回码,如果返回码是200,则正确得到网络连接
5.由连接获取输入流,将输入流写入到内存,由于是图片,所以为byte,
6.将内存中的数据赋给byte数组data,
7.用Bitmap的解码工厂将数据解码为图片
Bitmap image = BitmapFactory.decodeByteArray(data,0,data.length);
8,为了以后省流量,快速访问,将此图片缓存到本地
阅读全文
摘要:Android内部提供了大量标准的Action和Category常量。
其中用于启动Activity的标准Aciton及对应的字符串如下表所示:
阅读全文
摘要:因为兼容性问题,色阶板功能只能在IE浏览器中运行
阅读全文
摘要:Android中颜色值是通过红(Red)、绿(Green)、蓝(Blue)三原色,以及一个透明度(Alpha)值来表示的,颜色值总是以井号(#)开头,接下来就是Alpha-Red-Green-Blue的形式。其中Alpha值可以省略,如果省略了Alpha的值,那么该颜色默认是完全不透明的。
阅读全文
摘要:发现用如下方法可以直接取到下一个闹钟的时间
String str = Settings.System.getString(mActivityObject.getContentResolver(),
Settings.System.NEXT_ALARM_FORMATTED);
赶紧一试果然。。
阅读全文
摘要:使用Ant构建脚本构建你的应用程序有两种方式:一种用于测试/调试你的引用程序—debug模式—另一种用于构建你最终发布的包-release模式。无论你使用哪种方式构建你的应用程序,它必须在安装在模拟器或者设备之前被签名—当以debug模式构建的时候使用debug key,当以release模式构建的时候使用你自己的private key。
阅读全文
摘要:网上有很多教程,但大部分是旧版本的内容,最新版本的已经改变,为了让大家少走弯路,在这里针对r9的配置进行记录分享。
阅读全文