zu erstellen Ich versuche, etwas zu machen, wo eine bestimmte Anzahl wird jeden Tag abnehmen, auch wenn die App geschlossen ist, und nicht aktiv. Zum Beispiel, wenn Sie die App für 5 Tage nicht öffnen, wenn Sie es öffnen, wird die Nummer 5 Nummern niedriger sein. Ich habe versucht, AlarmManager zu verwenden, aber ich kann nur einen Toast erstellen und keine Funktion in der Hauptaktivität ausführen. Hier ist mein Code ...Ich versuche, einen täglichen Countdown mit AlarmManager in Android Studios
Hauptaktivität
private TextView mTest;
private Button mButton;
private int number = 100;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mButton = (Button) findViewById(R.id.button);
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
scheduleAlarm();
}
});
}
public void scheduleAlarm(){
Intent intentAlarm = new Intent(this, AlarmReceiver.class);
AlarmManager alarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, 100000, 100000, PendingIntent.getBroadcast(this, 1, intentAlarm, PendingIntent.FLAG_UPDATE_CURRENT));
Toast.makeText(MainActivity.this, "This is starting!", Toast.LENGTH_SHORT).show();
}
public void subtract(){
mTest = (TextView) findViewById(R.id.textView);
number -= 1;
String numberString = Integer.toString(number);
mTest.setText(numberString);
}
und hier ist die Sendung
private MainActivity mMainActivity = new MainActivity();
@Override
public void onReceive(Context context, Intent intent) {
mMainActivity.subtract();
Toast.makeText(context, "This is bogus", Toast.LENGTH_LONG).show();
}
zeigen Sie Ihren aktuellen Code und versucht, das Problem zu beheben –