1. android 4.1.2 为什么写的广播注册后 必须运行一次activity才能...
SCREEN_ON和SCREEN_OFF只能在Activity和Service里面用,广播接收器不行,service不会自动启动 查看更多答案>>
2. 如何关闭安卓手机解锁时的声音
点开手机设置,进入声音选项,有一个屏幕锁定提示音,就是控制手机解锁时音效的!
记得采纳啊
3. android 怎样实现锁屏界面上有歌曲的快进暂停下一首的按钮控制
1.播放与暂停,这是同一个按钮。只是要根据当前的情况不同来执行不同的功能,尤其是初始状 态,有可能改程序执行时,已经有音乐在播放,所以这里要进行判断,这个可以通过AudioManager的isMusicActive()方法来判断音乐的状况,但是由于智能判断音乐是否开始,但是无法分辨出音乐结束还是暂停。
2.一般的播放器会有拔出耳机就暂停音乐的设定,所以我们的控制器也要随之变化,不过android系统提供了耳机拔出或插入的广播,我们可以监听这个广播然后进行操作。
3.由于有的播放器在通知栏可以操作播放器播放状态,所以他可以不开屏的状态下直接暂停(或其他操作)音乐。但是我们在锁屏页面无法知道这个操作,无法更新我们页面的按钮。而且通知栏操作属于其软件的内部操作,不需要像我们一样使用广播,所以也无法监听广播来控制。经过思考,由于没有接收到通知的方法。只能选择监控的方式来进行,所以我在后台写了一个timer来每间隔一秒监控一次当前的音乐播放状态,如果发现与显示的状态不符,则将其修改正确。这种方法比较浪费资源,但是基本可以满足需求。所以在资源不紧张的情况下可以考虑使用。
4.在android4.4中,系统修改了远程控制音乐播放的相关api导致曾经的方法出现问题。这里简单描述一下,在4.4之前,我使用sendOrderedBroadcast的方式来发送广播,防止这个广播被多个音乐软件同时收到导致播放错乱(有的并未启动的音乐软件甚至会因为收到了这个广播而自启动)。但是在4.4后,使用有序广播则无法正常控制音乐软件,必须使用无序的放送方法才能控制。但也同时导致了上述问题。为了单一控制,我准备在广播的intent中加入目标包,即通过setPackage的方法,指定广播的发送对象。经过测试,确实可以完美解决广播控制多个音乐软件的问题。
4. android怎么接收手机锁屏的广播
一下方法或设置均未验证
==========
锁屏或黑屏会广播两个消息分别是:ACTION_SCREEN_OFF和ACTION_SCREEN_ON
程序控制手机永远不锁屏或者永远亮光:通过设置View.setKeepScreenOn(boolean)的方法可以永不锁屏
===========以下方法作者声称没有监听到该广播===========
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals( "android.intent.action.SCREEN_OFF" )){
Toast.makeText(context, "bbbb", Toast.LENGTH_LONG).show();
}
}
xml文件中如下:
<receiver android:name="ServiceReceiver">
<intent-filter>
<action android:name="android.intent.action.SCREEN_OFF" />
</intent-filter>
</receiver>
================以下禁止锁屏方法未验证==============
在每个Activity的onCreate里面加上如下代码就可以了:
@Override
protected void onCreate(Bundle icicle){
super.onCreate(icicle);
getWindow();addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
转载:http://mycoding.iteye.com/blog/962625
5. android锁屏开发难题,系统锁出现后如何自动取消的问题
(1)看看能不能捕获到锁屏的广播(类似监听通话广播)
(2)看看能不能监听锁屏状态(类似监听通话状态改变)
之前,我做个万能钥匙,给android手机解锁用的,不过要注册设备管理器的权限。
你也可以注册设备管理器权限,然后监听设备状态,如果设备状态改变(变成加锁),你就调用解锁方法。
6. 安卓手机按键刚打开,还没解锁,屏幕上出现广告什么情况。
1、打开通知栏,查看通知栏右上方是否有“清除”字样。若有,请点击清除通知栏信息。 2、若使用的是安卓4.1或以上操作系统,建议操作:待机界面-下滑屏幕顶帘-查找某条广告信息并按住不松手-会提示“应用程序”-点击进入后取消“显示通知”前面的对勾即可。 3、自动弹出的广告推送信息,可能是下载的第三方软件的推送信息。建议通过该软件设置选项禁用推送信息的功能。
7. android 怎样收到系统发送的广播
要注册接受广播的处理程序, 有两种方式
在AndroidManifest.xml重注册, 比如监听系统的开机广播和屏幕解锁广播
<receiver android:name="com.bestjoy.app.common.update.BootCompletedReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
这样, 一旦有定义的action发出来,BootCompletedReceiver的onReceive方法就会回调了,这样的监听,不需要你的app已经在运行。
2. 在程序中动态创建监听器, 比如还是解锁广播,
在Activity的onCreate()中生成一个IntentFilter对象
IntentFilter filter=new IntentFilter();
//为IntentFilter添加一个Action
filter.addAction("android.intent.action.USER_PRESENT");
bootCompletedReceiver = newUserPresentReceiver();
registerReceiver(smsReceiver, filter);
在onDestroy的时候去注册
unregisterReceiver(bootCompletedReceiver);
这样的方式只有在Activity生命周期onCreate()-onDestroy()之间有效。
对于一些特俗的系统级别的广播,即使你按照上面的任何一种方式做了, 也可能监听不到, 这是android 系统做了保护了, 网上查一下就知道了。