attempt to use AlarmManager
This commit is contained in:
parent
30c751bd0e
commit
46b16e8103
3 changed files with 150 additions and 88 deletions
|
@ -175,6 +175,8 @@ box-shadow: 0 0 10px grey;
|
||||||
<div id="settingsDiv">
|
<div id="settingsDiv">
|
||||||
<button style="padding:1cm;font-size:1cm;margin:1cm;" onclick='window.counti=window.counti|| 1; window.counti++;preout.textContent+="\n"+myJavaScriptInterface.androidNotification("message"+Date.now(),"title",window.counti);'>test notification</button>
|
<button style="padding:1cm;font-size:1cm;margin:1cm;" onclick='window.counti=window.counti|| 1; window.counti++;preout.textContent+="\n"+myJavaScriptInterface.androidNotification("message"+Date.now(),"title",window.counti);'>test notification</button>
|
||||||
<pre id="preout"></pre>
|
<pre id="preout"></pre>
|
||||||
|
<button style="padding:1cm;font-size:1cm;margin:1cm;" onclick='window.counti=window.counti|| 1; window.counti++;alarmout.textContent+="\n"+myJavaScriptInterface.setAlarm();'>test alarm</button>
|
||||||
|
<pre id="alarmout"></pre>
|
||||||
</div>
|
</div>
|
||||||
<
|
<
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -18,14 +18,17 @@ import java.util.Objects;
|
||||||
import android.app.Notification;
|
import android.app.Notification;
|
||||||
import android.app.NotificationManager;
|
import android.app.NotificationManager;
|
||||||
import android.Manifest;
|
import android.Manifest;
|
||||||
import android.graphics.Bitmap;
|
import java.util.Calendar;
|
||||||
import android.graphics.Color;
|
import android.app.AlarmManager;
|
||||||
import android.graphics.drawable.Icon;
|
import android.app.PendingIntent;
|
||||||
|
//import android.graphics.Bitmap;
|
||||||
|
//import android.graphics.drawable.Icon;
|
||||||
|
|
||||||
public class AppActivity extends Activity {
|
public class AppActivity extends Activity {
|
||||||
|
|
||||||
private Icon icon;
|
// private Icon icon;
|
||||||
private Bitmap bitmap;
|
// private Bitmap bitmap;
|
||||||
|
|
||||||
|
|
||||||
private static final String BASE_URI = "https://alexmahr.de";
|
private static final String BASE_URI = "https://alexmahr.de";
|
||||||
public String readFileFromAssets(String filename) {
|
public String readFileFromAssets(String filename) {
|
||||||
|
@ -87,6 +90,21 @@ public class AppActivity extends Activity {
|
||||||
setContentView(myWebView);
|
setContentView(myWebView);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@JavascriptInterface
|
||||||
|
public String setAlarm(){
|
||||||
|
Intent myIntent = new Intent(getBaseContext(), MyReceiver.class);
|
||||||
|
PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(), 0, myIntent, PendingIntent.FLAG_MUTABLE );
|
||||||
|
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
|
||||||
|
Calendar calendar = Calendar.getInstance();
|
||||||
|
calendar.setTimeInMillis(System.currentTimeMillis());
|
||||||
|
calendar.add(Calendar.SECOND, 5);
|
||||||
|
long interval = 10 * 1000; //
|
||||||
|
alarmManager.setExact(AlarmManager.RTC_WAKEUP,system.currentTimeMillis()+10000 , pendingIntent);
|
||||||
|
// alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis(), interval, pendingIntent);
|
||||||
|
return "alarm set";
|
||||||
|
}
|
||||||
|
|
||||||
public void setupNotificationChannelShit(){
|
public void setupNotificationChannelShit(){
|
||||||
NotificationManager mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
|
NotificationManager mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
|
||||||
String id = "my_channel_01";
|
String id = "my_channel_01";
|
||||||
|
@ -98,7 +116,6 @@ public class AppActivity extends Activity {
|
||||||
mNotificationManager.createNotificationChannel(mChannel);
|
mNotificationManager.createNotificationChannel(mChannel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@JavascriptInterface
|
@JavascriptInterface
|
||||||
public String androidNotification(String message,String title,int id) {
|
public String androidNotification(String message,String title,int id) {
|
||||||
Notification notif = new Notification.Builder(this)
|
Notification notif = new Notification.Builder(this)
|
||||||
|
|
43
app/src/calender/app/MyReceiver.java
Normal file
43
app/src/calender/app/MyReceiver.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package calender.app;
|
||||||
|
import android.provider.Settings ;
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.util.Log;
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.app.NotificationChannel;
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.os.Environment;
|
||||||
|
//import android.view.MenuItem;
|
||||||
|
import android.view.*;
|
||||||
|
// for WebView,WebMessage,WebMessagePort,
|
||||||
|
import android.webkit.*;
|
||||||
|
import android.net.Uri;
|
||||||
|
import org.json.JSONObject;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.Objects;
|
||||||
|
import android.app.Notification;
|
||||||
|
import android.app.NotificationManager;
|
||||||
|
import android.Manifest;
|
||||||
|
import java.util.Calendar;
|
||||||
|
import android.app.AlarmManager;
|
||||||
|
import android.app.PendingIntent;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.BroadcastReceiver;
|
||||||
|
import android.util.Log;
|
||||||
|
//import android.graphics.Bitmap;
|
||||||
|
//import android.graphics.drawable.Icon;
|
||||||
|
|
||||||
|
|
||||||
|
public class MyReceiver extends BroadcastReceiver {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
Log.i("myapp","onReceive CALLED");
|
||||||
|
Intent myIntent =new Intent(context, AppActivity.class);
|
||||||
|
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
|
context.startActivity(myIntent);
|
||||||
|
System.out.println("Receiver Call");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue