如何使用Alarm Manager

时间:2018-04-20 19:24:34

标签: alarmmanager

我正在尝试创建一个警报,但它无法正常工作。我按照我在互联网上找到的许多教程,从GitHub下载了项目,但仍然无法正常工作。你能查一下代码吗?

 public class MainActivity extends AppCompatActivity {
        AlarmManager alarmManager;
        private PendingIntent pendingIntent;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            Intent myIntent = new Intent(MainActivity.this, hi.class);
            pendingIntent = PendingIntent.getService(MainActivity.this, 0, myIntent, 0);

            AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);

            Calendar calendar = Calendar.getInstance();
            calendar.setTimeInMillis(System.currentTimeMillis());

            alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);

        }
    }

    public class hi extends BroadcastReceiver {
    public void onReceive(final Context context, Intent intent) {
        //perform your task
        Toast.makeText(context, "Alarm Received after 10 seconds.", Toast.LENGTH_SHORT).show();
    }
}


XML

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.suad.cakchild">
    <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    <receiver android:name=".hi" android:process=":remote"/>
    </application>
</manifest>

0 个答案:

没有答案