【问题标题】:Toast message at fix time daily,even when app gets close in android每天固定时间吐司消息,即使应用程序在 android 中关闭
【发布时间】:2017-04-14 12:29:26
【问题描述】:

我希望每天下午 2:00 显示简单的 toast 消息,即使应用程序关闭。 请帮帮我。

MainActivity.java

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.HOUR_OF_DAY, 12);
        calendar.set(Calendar.MINUTE, 47);
        calendar.set(Calendar.SECOND, 0);
        Intent intent1 = new Intent(MainActivity.this, AlarmReceiver.class);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0,intent1, PendingIntent.FLAG_UPDATE_CURRENT);
        AlarmManager am = (AlarmManager) MainActivity.this.getSystemService(MainActivity.this.ALARM_SERVICE);
        am.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);
    }
}

AlarmReceiver.java

public class AlarmReceiver extends BroadcastReceiver {
    int MID = 0;
    @Override
    public void onReceive(Context context, Intent intent) {
        // TODO Auto-generated method stub
        Log.i("dummy","sjcdbfsnbf");
            // For our recurring task, we'll just display a message
            Toast.makeText(context, "I'm running", Toast.LENGTH_SHORT).show();

        }

    }

【问题讨论】:

  • @Shivangi:使用Service!!
  • 请分享代码。
  • 真正的问题是什么?您的代码是否崩溃或出现意外情况?
  • 当我从后台关闭应用程序时,它不会显示 toast 消息。所以即使应用程序从后台关闭,我也想要 toast 消息

标签: android android-toast


【解决方案1】:

你可以使用后台服务。

【讨论】:

    【解决方案2】:
    @Override
    public void onReceive(Context context, Intent intent) {
        // TODO: This method is called when the BroadcastReceiver is receiving
        // an Intent broadcast.
        try {
            Calendar c = Calendar.getInstance();
    
    
                    if((int)c.get(Calendar.HOUR_OF_DAY) == 14)
                    {
                     // Show toast here
                    }
      throw new UnsupportedOperationException("Not yet implemented");
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
    

    【讨论】:

    • 嗨,如果(c.get(Calendar.HOUR_OF_DAY)==2) 在这种情况下它不接受 2
    猜你喜欢
    • 1970-01-01
    • 2021-10-06
    • 2021-09-06
    • 1970-01-01
    • 1970-01-01
    • 2015-01-26
    • 2020-09-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多