当前位置: 编程技术>移动开发
本页文章导读:
▪小弟我知道的Pending 我知道的Pending~
pendingIntent字面意义:等待的,未决定的Intent。 要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int) , getBroadcast(Context, int, Intent, int) , getServ.........
▪ dreamweaver cs6配备phonegap环境 dreamweaver cs6配置phonegap环境
1.安装dreamweaver cs6,网上有破解补丁,不过要注意可能有cpu占用50%的情况,那样只能重新找补丁替换了。
5.点击重新生成应用程序,会在线生成应用程序,如果.........
▪ 大局监听SCREEN_ON和SCREEN_OFF的替代方法-监听屏幕解锁事件 全局监听SCREEN_ON和SCREEN_OFF的替代方法--监听屏幕解锁事件
在做一个程序的时候,需要时刻保持某一服务是启动的,因此想到了通过监听屏幕SCREEN_ON和SCREEN_OFF这两个action。奇怪的是,这两个.........
[1]小弟我知道的Pending
来源: 互联网 发布时间: 2014-02-18
我知道的Pending~
pendingIntent字面意义:等待的,未决定的Intent。
要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int) , getBroadcast(Context, int, Intent, int) , getService(Context, int, Intent, int) 分别对应着Intent的3个行为,跳转到一个activity组件、打开一个广播组件和打开一个服务组件。
参数有4个,比较重要的事第三个和第一个,其次是第四个和第二个。可以看到,要得到这个对象,必须传入一个Intent作为参数,必须有context作为参数。
pendingIntent是一种特殊的Intent。主要的区别在于Intent的执行立刻的,而 pendingIntent的执行不是立刻的。 pendingIntent执行的操作实质上是参数传进来的Intent的操作,但是使用 pendingIntent的目的在于它所包含的Intent的操作的执行是需要满足某些条件的。
主要的使用的地方:
状态栏通知 (Notification)
窗口小部键widget
和AlarmManager一起,控制打开intent的时间
eg:
PendingIntent pintent=PendingIntent.getService(context, 0, intent, 0);
//获取当前时间
long now =System.currentTimeMillis();
long unit=1000;//间隔一秒
//计时器
AlarmManager alarm=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
//AlarmManager.RTC_WAKEUP设置服务在系统休眠时同样会运行
//第二个参数是下一次启动service时间
alarm.set(AlarmManager.RTC_WAKEUP, now+unit, pintent);
pendingIntent字面意义:等待的,未决定的Intent。
要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int) , getBroadcast(Context, int, Intent, int) , getService(Context, int, Intent, int) 分别对应着Intent的3个行为,跳转到一个activity组件、打开一个广播组件和打开一个服务组件。
参数有4个,比较重要的事第三个和第一个,其次是第四个和第二个。可以看到,要得到这个对象,必须传入一个Intent作为参数,必须有context作为参数。
pendingIntent是一种特殊的Intent。主要的区别在于Intent的执行立刻的,而 pendingIntent的执行不是立刻的。 pendingIntent执行的操作实质上是参数传进来的Intent的操作,但是使用 pendingIntent的目的在于它所包含的Intent的操作的执行是需要满足某些条件的。
主要的使用的地方:
状态栏通知 (Notification)
窗口小部键widget
和AlarmManager一起,控制打开intent的时间
eg:
PendingIntent pintent=PendingIntent.getService(context, 0, intent, 0);
//获取当前时间
long now =System.currentTimeMillis();
long unit=1000;//间隔一秒
//计时器
AlarmManager alarm=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
//AlarmManager.RTC_WAKEUP设置服务在系统休眠时同样会运行
//第二个参数是下一次启动service时间
alarm.set(AlarmManager.RTC_WAKEUP, now+unit, pintent);
[2] dreamweaver cs6配备phonegap环境
来源: 互联网 发布时间: 2014-02-18
dreamweaver cs6配置phonegap环境
来自:http://www.mojifan.com/post/29.html
下载安装 dreamweaver cs6(如果已安装请跳过)
下载安装Android SDK(如果已安装请跳过)
下载最新的PhoneGap备用
1.安装dreamweaver cs6,网上有破解补丁,不过要注意可能有cpu占用50%的情况,那样只能重新找补丁替换了。
2.最好将工作区设为‘移动应用程序’这时就会在左边看到phonegap面板,如果没有,菜单->站点->phonegap build服务->phonegap build配置,
选择自己安装的SDK位置,然后保存。
3.菜单->站点->新建站点,然后文件->新建->示例中的页->Mobile起始页->包含主题的jQueryMobile(本地),然后保存文件到当前站点下,会提示复制相关文件。
4.当然如果不想用jquery mobile界面,自己可以新建个空白界面了,然后引入cordova-2.0.0.js就可以了,不过对于很多phonegap插件dw就无能为力了。
5.点击重新生成应用程序,会在线生成应用程序,如果网络不好的话,会很慢。
6.稍等片刻,生成完毕,运行。
7.选择或新建一个AVD,然后启动。
[3] 大局监听SCREEN_ON和SCREEN_OFF的替代方法-监听屏幕解锁事件
来源: 互联网 发布时间: 2014-02-18
全局监听SCREEN_ON和SCREEN_OFF的替代方法--监听屏幕解锁事件
private void registerScreenActionReceiver(){
final IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_SCREEN_OFF);
filter.addAction(Intent.ACTION_SCREEN_ON);
registerReceiver(receiver, filter);
}
private final BroadcastReceiver receiver = new BroadcastReceiver(){
@Override
public void onReceive(final Context context, final Intent intent) {
// Do your action here
}
};
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".ScreenActionTestActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".ActionReceiver">
<intent-filter android:priority="90000">
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
</application>
在做一个程序的时候,需要时刻保持某一服务是启动的,因此想到了通过监听屏幕SCREEN_ON和SCREEN_OFF这两个action。奇怪的是,这两个action只能通过代码的形式注册,才能被监听到,使用AndroidManifest.xml 完全监听不到。查了一下,发现这是PowerManager那边在发这个广播的时候,做了限制,限制只能有register到代码中的receiver才能接收。
那怎么才能保证我的服务一直是启动状态呢,其实还有另一个Action可以反映出用户正在使用手机的行为,每个用户在使用手机的时候,首先按电源键将屏幕点亮,紧接着就是解锁。解锁动作通过android.intent.action.USER_PRESENT发送出来,我们就能识别出该用户进入了home界面,也就能启动我们相应的服务了,不管你是要谈对话框welcome用户,还是后台启动程序升级服务,都可以!以神的名义发誓,该Action在AndroidManifest.xml中可以监听得到。
http://blog.csdn.net/chenghai2011/article/details/7219336
最新技术文章: