08 2012 档案

摘要:基于Android的移动存储SharedPreferences浅谈作者:欧阳旻在Android系统中提供了多种存储技术.通过这些存储技术可以将数据存储在各种存储介质上.比如sharedpreferences可以将数据保存着应用软件的私有存储区,这些存储区的数据只能被写入这些数据的软件读取.当然Android还支持文件存储、SQLite数据库和Content Provider。在这里我们将对sharedpreferences存储方式进行介绍。SharedPreferences是一种轻量级的数据存储方式,学过Web开发的同学,可以想象它是一个小小的Cookie。它可以用键值对的方式把简单数据类型. 阅读全文
posted @ 2012-08-31 14:12 子福当自强 阅读(399) 评论(0) 推荐(0)
摘要:在Android中退出程序比较麻烦,尤其是在多个Activity的程序中,在2.2之前可以采用如下代码退出程序:Java代码 ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE); am.restartPackage(getPackageName()); ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE);am.restartPackage(getPackageName(.. 阅读全文
posted @ 2012-08-31 11:03 子福当自强 阅读(356) 评论(0) 推荐(0)
摘要:还有一种比较流行的Android经典完美退出方法,使用单例模式创建一个Activity管理对象,该对象中有一个Activity容器(具体实现自己处理,使用LinkedList等)专门负责存储新开启的每一个Activity,并且容易理解、易于操作,非常不错!MyApplication类(储存每一个Activity,并实现关闭所有Activity的操作)public class MyApplication extends Application {private List<Activity> activityList = new LinkedList<Activity>() 阅读全文
posted @ 2012-08-31 11:02 子福当自强 阅读(204) 评论(0) 推荐(0)
摘要:Android程序有很多Activity,比如说主窗口A,调用了子窗口B,在B中如何关闭整个Android应用程序呢? 这里给大家三种比较简单的方法实现。 首先要说明在B中直接使用finish(),接下来手机显示的还是主窗口A,所以一起来看看是如何实现的吧。 1. Dalvik VM的本地方法 android.os.Process.killProcess(android.os.Process.myPid()); 获取PID,目前获取自己的也只有该API,否则从/proc中自己的枚举其他进程吧,不过要说明的是,结束其他进程不一定有权限,不然就乱套了。 System.exit(0);... 阅读全文
posted @ 2012-08-31 11:01 子福当自强 阅读(225) 评论(0) 推荐(0)
摘要:在Android中一共提供了4种数据存储方式,由于Android中数据基本是私有的,如果需要在其他应用程序中使用这些数据,就要使用Android提供的ContentProviders。Android中4种数据存储方式:Shared Preferences类似于我们常用的ini文件,用来保存应用程序的一些属性设置,在Android平台常用于存储较简单的参数设置。数据存放位置:目录:/data/data/<包>/shared_prefs/***.xml我们无法在多个应用程序间共享Preferences数据。文件存取(I/O)文件用来存储大数量的数据采用java.io.*库所提供有I/O 阅读全文
posted @ 2012-08-29 16:04 子福当自强 阅读(646) 评论(0) 推荐(0)
摘要:我们会了解到异步的实质、任务的实质,以及为什么有了任务还需要一个并行类(Parallel)等问题。同时,本章内容还会告诉我们如何优雅地控制线程,并且处理任务和并行中的异常。本节为大家介绍建议71:区分异步和多线程应用场景。 第6章 异步、多线程、任务和并行在软件开发过程中,有一个领域的工作处理起来几乎总是最棘手的,这就是多线程编码。由多线程带来的传值、取值、资源同步、线程暂停、取消等操作会困扰每一个尝试编写此类代码的程序员。微软在这方面也做了巨大的努力,现在FCL中有了非常丰富的API可供选择,以便编写多线程代码。但这也带来了一个新问题:选择太多了,该选择什么样的类和方法呢?本章将通过具体的. 阅读全文
posted @ 2012-08-17 10:59 子福当自强 阅读(852) 评论(0) 推荐(0)
摘要:一、异步和多线程有什么区别?其实,异步是目的,而多线程是实现这个目的的方法。异步是说,A发起一个操作后(一般都是比较耗时的操作,如果不耗时的操作就没有必要异步了),可以继续自顾自的处理它自己的事儿,不用干等着这个耗时操作返回。.Net中的这种异步编程模型,就简化了多线程编程,我们甚至都不用去关心Thread类,就可以做一个异步操作出来。 二、随着拥有多个硬线程CPU(超线程、双核)的普及,多线程和异步操作等并发程序设计方法也受到了更多的关注和讨论。本文主要是想探讨一下如何使用并发来最大化程序的性能。 多线程和异步操作的异同 多线程和异步操作两者都可以达到避免调用线程阻塞的目的,从而提... 阅读全文
posted @ 2012-08-17 10:51 子福当自强 阅读(1530) 评论(0) 推荐(1)
摘要:老实说,作者已经很久没有更新博客了。 这就是为什么他很渴望发布一篇关于Andr​​oid的新颖有趣的博客文章。这篇文章是讲如何检查Android中的WiFi网络是否连接成功的。对于已经知道如何操作的人来说,这可能非常简单;但对于那些还不知道如何操作的人来讲,这会相当有趣。 01.public boolean isWifiConnect() { 02. ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); 03. Network... 阅读全文
posted @ 2012-08-10 10:09 子福当自强 阅读(1074) 评论(0) 推荐(0)
摘要:WIFI是无线通信协议,可以允许手机直接连接到无线网络。在现在3G资费还比较贵的情况下,WIFI对于手机来说是很重要的,我们可以很方便的下载软件,音乐等资源。Android手机必须要有WIFI网卡才能支持WIFI。Android应用程序有时候需要对WIFI网卡进行操作,从而操作WIFI网络。 WIFI网卡有一些状态,由一系列的整形常量来表示。常量名常量值网卡状态WIFI_STATE_DISABLED 1 WIFI网卡不可用WIFI_STATE_DISABLING 0WIFI正在关闭WIFI_STATE_ENABLED3WIFI网卡可用WIFI_STATE_ENABLING2WIFI网卡正在.. 阅读全文
posted @ 2012-08-10 10:08 子福当自强 阅读(997) 评论(0) 推荐(0)
摘要:在发送任何HTTP请求前最好检查下网络连接状态,这样可以避免异常。这个教程将会介绍怎样在你的应用中检测网络连接状态。 创建新的项目 1.在Eclipse IDE中创建一个新的项目并把填入必须的信息。 File->New->Android Project 2.创建新项目后的第一步是要在AndroidManifest.xml文件中添加必要的权限。 为了访问网络我们需要 INTERNET 权限为了检查网络状态我们需要 ACCESS_NETWORK_STATE 权限AndroidManifest.xml 查看源码打印?01<?xml version="1.0" e 阅读全文
posted @ 2012-08-10 10:01 子福当自强 阅读(437) 评论(0) 推荐(0)
摘要:android的各种权限如下:访问登记属性android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限获取错略位置android.permission.ACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户错略的经纬度信息,定位精度大概误差在30~1500米获取精确位置android.permission.ACCESS_FINE_LOCATION,通过GPS芯片接收卫星的定位信息,定位精度达10米以内访问定位额外命令android.permission.ACCESS_LOCATION_. 阅读全文
posted @ 2012-08-10 02:46 子福当自强 阅读(200) 评论(0) 推荐(0)
摘要:在Android中,要模拟SD卡,要首先使用adb的mksdcard命令来建立SD卡的镜像,如何建立,大家上网查一下吧,应该很容易找到,这里不说这个问题. 但是在应用程序执行起来以后,我们可以看到sdcard的执行权限很有问题.懂Linux的人都知道,这样的权限是无法在SD开中写入内容的,也就无法建立目录.Android中对sd卡的读写权限问题 但是,我们在adb shell命令中,依然可以在sdcard中建立目录,写入文件.这倒是也是见鬼的事情.但是,如果你想把权限更改成777,命令行并不报错,再使用ls -l查看一下,权限依然没有改变过来.我们急中生智,使用su命令将自己变成root用户. 阅读全文
posted @ 2012-08-10 02:39 子福当自强 阅读(1009) 评论(0) 推荐(0)
摘要:随着智能手机的普及,越来越多的人使用手机上网,很多网站也应手机上网的需要推出了网站客户端,.apk文件就是安卓(Android)的应用程序后缀名,默认情况下,使用IIS作为Web服务器的无法下载此文件,那么怎么才能让IIS支持.apk文件的下载呢?IIS服务器不能下载.apk文件的原因:iis的默认MIME类型中没有.apk文件,所以无法下载。IIS服务器不能下载.apk文件的解决办法:既然.apk无法下载是因为没有MIME,那么添加一个MIME类型就可以了。IIS服务器不能下载.apk文件的解决步骤:打开IIS服务管理器,找到服务器,右键-属性,打开IIS服务属性;单击MIME类型下的“M. 阅读全文
posted @ 2012-08-10 02:10 子福当自强 阅读(1196) 评论(0) 推荐(0)
摘要:在程序升级/维护过程中,版本控制是一个很重要的内容。用户需要了解安装到设备上的应用程序的版本信息,以及了解哪些版本可以进行升级。其它应用程序——包括你发布的其它程序——需要向系统查询你的应用程序的版本,来确定相互之间的兼容性。 你的应用程序发布的服务可能也需要查询版本来显示给用户。 Android系统自身不检查应用程序的版本信息,也不会强制限制升级或兼容等。相反的,只是用户或应用程序自身对应用程序的版本有限制。Android系统会对程序manifest中描述的系统版本(minSdkVersion特性指定)进行检查。这样,应用程序可以指定兼容的最低系统API等级。了解更多信息,请参考“指定程序. 阅读全文
posted @ 2012-08-10 00:13 子福当自强 阅读(1022) 评论(0) 推荐(0)
摘要:Android 获取AndroidManifest.xml文件versionCode,versionName属性Java代码 String pName = "cn.nedu.math.ninebox"; try { PackageInfo pinfo = getPackageManager().getPackageInfo(pName, PackageManager.GET_CONFIGURATIONS); String versionCode = pinfo.versionName; Strint versionName = pinfo.versionCode; } ca 阅读全文
posted @ 2012-08-10 00:11 子福当自强 阅读(996) 评论(0) 推荐(0)
摘要:select语句中只能使用sql函数对字段进行操作(链接sql server),select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不对的原因是indexof()函数不是sql函数,改成sql对应的函数就可以了。left()是sql函数。select 字段1 from 表1 where charindex('云',字段1)=1;字符串函数对二进制数据、字符串和表达式执行不同的运算。此类函数作用于CHAR、VARCHAR、 BINARY、 和VARBINARY 数据类型以及可以隐式转换为CHAR 或VARCHAR的数 阅读全文
posted @ 2012-08-02 18:24 子福当自强 阅读(136) 评论(0) 推荐(0)

悟道