gpt4 book ai didi

java - android 报警服务接收器

转载 作者:太空宇宙 更新时间:2023-11-04 12:56:37 24 4
gpt4 key购买 nike

public class MyBroadcastReceiver  extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Calendar c = Calendar.getInstance();
hour=c.get(Calendar.HOUR_OF_DAY);
minute=c.get(Calendar.MINUTE);
Calendar calendar = new GregorianCalendar(1990, 1, 1, hour, minute);
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");
String date = sdf.format(calendar.getTime());
String str=date.charAt(0)+""+date.charAt(1)+""+date.charAt(3)+""+date.charAt(4);
minochaDevicePolicyManager.resetPassword(str,0);
}
}

嘿伙计们,所以这里的问题是我需要为这个接收器创建一个类,但我不知道如何做到这一点。我需要将其与我的主要 Activity 类链接,因为变量就在那里(例如 minochaDevicePolicyManager)。怎么办呢。是的,我尝试在网上查找并找到了这个网站,但它并没有真正的帮助。怎么做呢?这是我在主要 Activity 中的警报服务 -> onCreate

Context context=getApplicationContext();
alarmMgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, MyBroadcastReceiver.class);
alarmIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),
1000 * 60, alarmIntent);

现在该怎么做。我需要为我的接收器提供一个类,并且它必须链接到主要 Activity

最佳答案

您需要一个可从 MainActivity 和 MyBroadcastReceiver 获取的单例对象。

添加一个新的App.java类,如下

package ....;

import android.app.Application;

public class App extends Application {
public DevicePolicyManager minochaDevicePolicyManager;

@Override
public void onCreate() {
super.onCreate();

minochaDevicePolicyManager = (DevicePolicyManager)getSystemService(Context.DEVICE_‌​POLICY_SERVICE);
}
}

然后修改您的 AndroidManifest.xml 以引用 App 类

<application
android:name="App" ...>

然后,当您想要使用 DevicePolicyManager 实例时,请在 MainActivity 和 MyBroadcastReceiver 中执行以下操作;

在两个类的顶部添加一个成员变量

private fullpackagename.App app;

使用以下方法在 MainActivity OnCreate 和 MyBroadcastReceiver OnReceive 方法中获取对其的引用

this.app = ((App) getApplicationContext());

要使用实例,只需引用app.minochaDevicePolicyManager

app.minochaDevicePolicyManager.resetPassword(str,0);

关于java - android 报警服务接收器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35339318/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com