スケジュールされた通知を送信するためのAIRネイティブ拡張機能を作成しようとしています。次のコードがあります。
package com.ane.notification.functions;
public class ScheduledNotificationFunction implements FREFunction {
Context androidActivity;
Context androidContext;
@Override
public FREObject call(FREContext context, FREObject[] args) {
androidActivity = context.getActivity();
androidContext = androidActivity.getApplicationContext();
AlarmManager alarmManager = (AlarmManager) androidContext.getSystemService(Context.ALARM_SERVICE);
int id = (int) System.currentTimeMillis();
Intent intent = new Intent(androidContext, SendNotification.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(androidContext, id, intent, 0);
alarmManager.set(AlarmManager.RTC_WAKEUP, (System.currentTimeMillis()+30000), pendingIntent);
return null;
}
}
クラスSendNotification
package com.ane.notification.functions;
public class SendNotification extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// Send Notification Code
}
}
AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ane.notification"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15" />
<application android:label="@string/app_name"
android:icon="@drawable/ic_launcher"
android:theme="@style/AppTheme">
<receiver android:name=".functions.SendNotification"/>
</application>
</manifest>
問題は、SendNotificationが呼び出されない場合、通知を送信するための明確な時間を一度マークすることです。try / catchを入れて例外を生成しないので、ScheduledNotificationFunctionコードは問題ないと思います。したがって、アラートはシステムに登録されていると思います。
私はAndroidでのプログラミングにあまり詳しくないので、これに欠けているものがあるか、私に知らせてください、ありがとう。