01 2014 档案
摘要:public class Main extends Activity implements OnGestureListener, OnTouchListener { // 一般不直接使用ViewAnimator而是使用它的两个子类ViewFlipper和ViewSwitcher。ViewFlipper可以用来指定FrameLayout内多个View之间的切换效果,可以一次指定也可以每次切换的时候都指定单独的效果。该类额外提供了如下几个函数: // isFlipping: 用来判断View切换是否正在进行 // setFilpInterval:设置View...
阅读全文
摘要:除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值 对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data//shared_prefs目录下。 SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。实现 SharedPreferences存储的步骤如下:一、根据Context获取SharedPreferences对象二、利用edit()方法获取Editor对象。三、通过Editor对象存储key-value键值对数据。四、通过comm
阅读全文
摘要:http://www.kaifajie.cn/android/10182-2.html每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,这个方法return 一个int值,return 的值有四种: START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service,由于服务状态为开始状态,所以创建服务后一定会调用onStartCommand(Intent,int,int)方法。如果在此期...
阅读全文
摘要:转自:Android学习笔记之AndroidManifest.xml文件解析一、关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)二、AndroidMani
阅读全文
摘要:参考:Android Application生命周期学习Android中如何查看内存(上)Android OnLowMemory和OnTrimMemoryOnLowMemoryOnLowMemory是Android提供的API,在系统内存不足,所有后台程序(优先级为background的进程,不是指后台运行的进程)都被杀死时,系统会调用OnLowMemory。系统提供的回调有:Application.onLowMemory()Activity.OnLowMemory()Fragement.OnLowMemory()Service.OnLowMemory()ContentProvider.OnL
阅读全文
摘要:【转】内存不足时Android 系统如何Kill进程大家其实都或多或少知道,Android系统有自已的任务管理器,当系统内存不足时,系统需要KILL一些进程(应用),以回收一部分资源,来保证系统仍可以正常的运行,而不会崩溃,今天,就具体讲讲这个原理。进程优先级(importance hierarchy)Android 系统尽量保持进程运行的更久,但是仍有时候,需要结束掉老的进程,回收内存来保证新的,或更重要的进程运行。要决定哪些进程运行,哪些被 KILL,系统会为每个运行的进程或者组件设置其进程优先级。通常KILL的顺序是优先级最低,然后其次,等等依次这样下去。一共有五级:前台进程(Foreg
阅读全文
摘要:当有一些耗费内存比较多的操作时,可以通过android:process指定一个新的进程。保证程序运行。例如:一个后台长期运行的service: 1 6 7 9 10 android:process定义activity运行所在的进程名称。一般情况下,应用的所有组件都运行在为应用创建的默认的进程中,该默认进程的名称应用包名称一致。通过定义元素的“process”属性可以为所有组件指定一个不同的默认进程。但是任意组件都可以重写默认进程,以便实现多进程操作。如果该属性指定名称以“:”开头,则一个新的专...
阅读全文
摘要:问题:有一个list,点击item时会做一些事情,然后重新加载数据,此时希望点击重新刷新后item还在原来的位置,而不是跳转到开头。实现如下:1、listview添加监听setOnScrollListener,记住滚动时的第一个可见列表项id,//记住上一次滚动时的位置信息 lv.setOnScrollListener(new OnScrollListener(){ @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItem...
阅读全文
摘要:参考 :http://blog.163.com/caoguoqiang_dlut/blog/static/10658914220114167219320/问题描述:在service中获取到数据,通过Notification传递数据给activity,对方接到的数据一直是第一次传递的数据。ps:入门教程和很坑啊,讲的不深。解决:关键:m_PendingIntent = PendingIntent.getActivity(FileTranferService.this, Setting.NoticeID, m_Intent, PendingIntent.FLAG_CANCEL_CURRENT);
阅读全文
摘要:问题:写了一个sdk给其他人用,提供一个回调函数,函数使用了handler处理消息// handler监听网络请求,完成后操作回调函数 final Handler trigerGfHandler = new Handler() { public void handleMessage(Message msg) { listener.onGeofenceTrigger(gfMatchIds); } };在使用这个sdk提供的函数时,报错:01-02 15:46:10.498: E/AndroidR...
阅读全文
浙公网安备 33010602011771号