相关疑难解决方法(0)

对AlarmManager.setRepeating的多次调用提供了相同的Intent/PendingIntent额外值,但我提供了不同的值

在写这个问题时解决了,但发布以防万一:

我正在设置这样的多个警报,具有不同的值id:

AlarmManager alarms = (AlarmManager)context.getSystemService(
        Context.ALARM_SERVICE);
Intent i = new Intent(MyReceiver.ACTION_ALARM);  // "com.example.ALARM"
i.putExtra(MyReceiver.EXTRA_ID, id);  // "com.example.ID", 2
PendingIntent p = PendingIntent.getBroadcast(context, 0, i, 0);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, nextMillis, 300000, p);  // 5 mins
Run Code Online (Sandbox Code Playgroud)

......并像这样接收它们:

public void onReceive(Context context, Intent intent) {
    if (intent.getAction().equals(ACTION_ALARM)) {
        // It's time to sound/show an alarm
        final long id = intent.getLongExtra(EXTRA_ID, -1);
Run Code Online (Sandbox Code Playgroud)

警报在适当的时间传递给我的接收器,但通常EXTRA_ID设置为错误的值:它是我在某个时刻使用的值,而不是我想要在那个特定时间传递的值.

android extras alarms android-pendingintent

17
推荐指数
2
解决办法
1万
查看次数

Android,在设备处于睡眠模式时获得强度信号(PhoneStateListener)

我有问题,经过一些搜索,我没有找到任何积极的解决方案.经过研究,我认为我的问题没有实施,但这个问题可能是我的最后一次机会.

我需要得到什么?

有应用程序获取有关移动网络强度信号的信息.我是这样做的 PhoneStateListener.当然它工作得很好但是当我的设备进入睡眠模式时,监听器不起作用:

https://code.google.com/p/android/issues/detail?id=10931 https://code.google.com/p/android/issues/detail?id=7592

WakeLock仅在设备因超时关闭的情况下解决问题.如果我按下硬电源按钮,我的设备也会进入睡眠模式.我们无法覆盖电源按钮操作.

我的目标是在启用设备时始终获得强度信号.什么模式无关紧要.它应该一直收集数据.

题:

有什么想法吗?怎么实现呢?有没有办法做到这一点,或者可能有一些黑客?欢迎所有解决方案.如果您有一些有用的经验,请分享一下.

感谢大家的帮助!!! 我希望,这个主题将获得有关此问题的完整信息.

android sleep signal-strength android-wake-lock phone-state-listener

5
推荐指数
1
解决办法
3123
查看次数

在单独的线程中运行服务并每 10 分钟唤醒一次?

我的应用程序将每 10 分钟访问一次 Web 服务来访问数据(即使应用程序不在前台)。最好的方法是什么?

首先,我需要在单独的线程中启动我的服务吗?如何让它每 10 分钟从服务器获取一次更新?有些人说 handler.postdelayed,有些人说使用 Alarm Manager。哪一个更好,我们有一些例子吗?

java multithreading android android-service

4
推荐指数
1
解决办法
3447
查看次数

如何在特定时间每天启动我的应用程序?

我想创建一个应用程序,基本上,应该在某个特定的时间启动自己,在后台做一些东西,然后杀死自己.

我需要提示移动方向和阅读内容.我很抱歉有点转储问题,但我是android的初学者.所以任何答复都会很棒.

automation android background-process

2
推荐指数
1
解决办法
5513
查看次数

禁用Nexus 7上的所有主页按钮和任务栏功能

我正在构建一个应用程序,它将成为展览的一部分.它将显示在可以安全安装的Nexus 7上.该应用程序具有触摸屏功能,将显示交互式内容.

我需要能够在显示时禁用尽可能多的功能,因为我不希望公众能够获得除应用程序之外的任何其他功能.

我正在努力的主要是back/home/recent app list按钮.我找到了一些禁用主页按钮的例子(儿童锁Android - 是否可以禁用主页按钮的点击 )但理想情况下我需要按钮是不可见的,所以要关闭'发光'(黑色会很好).

Nexus 7的底部是否以某种方式受到保护,是否有其他版本的Android可以让我这样做?Nexus设备仅用于显示此应用,不需要其他功能.

任何建议都会很棒,非常感谢.

android operating-system nexus-7

2
推荐指数
1
解决办法
1万
查看次数

如何在每分钟后运行BroadcastReceiver?

我正在开发一个应用程序来监控每分钟后的网络.我正在使用BroadcastReceiver.

我想在每分钟后执行BroadcastReceiver.

我该怎么做?我可以在BroadcastReceiver中使用Thread.sleep()吗?

可以继续在Android中运行BroadcastReceiver吗?

android broadcastreceiver

1
推荐指数
1
解决办法
6794
查看次数