- 浏览: 32657 次
- 性别:
- 来自: 福建
最新评论
-
qxinghui:
qxinghui 写道live17909 写道如何关闭其它程序 ...
设置组件状态--如何动态关闭manifest中的Receiver -
qxinghui:
live17909 写道如何关闭其它程序的呢?同问这个!
设置组件状态--如何动态关闭manifest中的Receiver -
live17909:
如何关闭其它程序的呢?
设置组件状态--如何动态关闭manifest中的Receiver
文章列表
关于handler线程
- 博客分类:
- android
android是线程安全的,所以次线程是没办法对UI线程进行操作。针对这个问题,android提供了handler消息管理。通常来说handler有两个用途:
1、改变ui界面
2、执行线程
当需要在别的线程中改变UI界面的,没办法直接操作UI,只能发送消息给handler,然后通过handler来改变ui界面。
handler的第二个用途就是执行线程。很多人可能会觉得线程的执行也就是执行整个runnable,但是在handler源码中是这样处理runnable:
message.callback.run();
也就是说直接调用了runnable的r ...
这几天刚好在整数据库的相关问题,把android的图标存储到数据库当中。
涉及到intent和bitmap对象的存储,首先说下intent。
存储intent:
在intent中有个toURI方法可以把intent转换成String类型的数据,然后可以把intent看成TEXT类型的数据存进数据库当中。转换过后的类型如下:
#Intent;component=com.android.settings/.Settings;end
取出intent:
当要获取intent的时候,首先用Cursor的getString方法获得数据库中的值,然后调用Intent的parseUri ...
一般用android系统的时候,我们使用wifi上网,但有时候我们也可以用3g上网,这里就需要设置一下3G接入点。具体设置主要是通过改变数据库数据来连接3g网络。
这里涉及到两个URI,分别是apn列表uri:content://telephony/carriers,主apn的uri:content://telephony/carriers/preferapn,
首先,向apn列表中插入一行,需要的属性有name、apn和numeric。numeric要看不同的系统设置,我遇过的有的是46001,还有的是别的,没记得太清楚。然后根据插入的id,把该行设置为主apn的行。这样settings里 ...
android提供了一个Configuration类,主要用来描述与能让应用程序获取的资源相关的所有硬件配置信息。包含用户指定的信息项(本地和缩放比例)和动态硬件配置(一系列的输入设备)。
Configuration 类中包含了很多种信息,例如系统字体大小,orientation,输入设备类型等等.
fontScale -- 来源于system.prop中 sys.font.scale配置项
输入设备类型配置:系统加入的任何输入device必须拥有输入属性:现在android中仅支持touchscreen(触摸),keyboard(键盘),navigation(滚动球)
orientat ...
android编程中,application这样的名词似乎变得那样的不常见,而让大家更为熟悉的是activity、intent、provider、broadcast和service。但其实android中的application也有着它自身的用处。
打开manifest文件,会看到有一个application配置标签,这就是有关application的使用了。那究竟application有什么用处呢?来看看SDK中是如何描述的:
Base class for those who need to maintain global application state. You ca ...
在android中,许多的系统属性都在settings应用当中进行设置的,比如wifi、蓝牙状态,当前本机语言,屏幕亮度等等一些相关的系统属性值。这些数据主要是存储在数据库中,对应的URI为:content://settings/system和content://settings/secure,这两个是主要的,目前也只是涉及到这两个数据库表的使用。
接下来,就了解下settings应用中是如何对系统属性进行设置的。
当需要获得当前wifi状态的值,调用已封装的方法如下:
Settings.Secure.getInt(getContentResolver() , Settings.Sec ...
为什么要关闭组件?
在用到组件时,有时候我们可能暂时性的不使用组件,但又不想把组件kill掉,比如创建了一个broadcastReceiver广播监听器,用来想监听第一次开机启动后获得系统的许多相关信息,并保存在文件中,这样以后每次开机启动就不需要再去启动该服务了,也就是说如果没有把receiver关闭掉,就算是不做数据处理,但程序却还一直在后台运行会消耗电量和内存,这时候就需要把这个receiver给关闭掉。
如何关闭组件?
关闭组件其实并不难,只要创建packageManager对象和ComponentName对象,并调用packageManager对象的setComponentEnabl ...