From 437f5a59855c08b59c4b09b76ebe2038d0576fd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Louis=20L=C3=A9v=C3=AAque?= Date: Mon, 29 Aug 2016 18:38:47 +0200 Subject: [PATCH] replace calls to setLatestEventInfo, which was removed in android23 API --- .../src/org/renpy/android/PythonService.java | 20 ++++++++++++++----- .../src/org/kivy/android/PythonService.java | 14 ++++++++++++- .../sdl2/build/templates/Service.tmpl.java | 15 +++++++++++++- .../src/org/kivy/android/PythonService.java | 14 ++++++++++++- .../webview/build/templates/Service.tmpl.java | 14 ++++++++++++- 5 files changed, 68 insertions(+), 9 deletions(-) diff --git a/pythonforandroid/bootstraps/pygame/build/src/org/renpy/android/PythonService.java b/pythonforandroid/bootstraps/pygame/build/src/org/renpy/android/PythonService.java index 321ee6094d..91e2402806 100644 --- a/pythonforandroid/bootstraps/pygame/build/src/org/renpy/android/PythonService.java +++ b/pythonforandroid/bootstraps/pygame/build/src/org/renpy/android/PythonService.java @@ -55,15 +55,25 @@ public int onStartCommand(Intent intent, int flags, int startId) { pythonThread.start(); Context context = getApplicationContext(); + /* Notification notification = new Notification(context.getApplicationInfo().icon, - serviceTitle, - System.currentTimeMillis()); + serviceTitle, System.currentTimeMillis()); + */ Intent contextIntent = new Intent(context, PythonActivity.class); PendingIntent pIntent = PendingIntent.getActivity(context, 0, contextIntent, - PendingIntent.FLAG_UPDATE_CURRENT); - notification.setLatestEventInfo(context, serviceTitle, serviceDescription, pIntent); - startForeground(1, notification); + PendingIntent.FLAG_UPDATE_CURRENT); + //notification.setLatestEventInfo(context, serviceTitle, serviceDescription, pIntent); + + Notification.Builder builder = new Notification.Builder(context); + builder.setContentTitle(serviceTitle); + builder.setContentText(serviceDescription); + builder.setContentIntent(pIntent); + builder.setSmallIcon(context.getApplicationInfo().icon); + //builder.setLargeIcon(); + + Notification notification = builder.build(); + startForeground(1, notification); return START_NOT_STICKY; } diff --git a/pythonforandroid/bootstraps/sdl2/build/src/org/kivy/android/PythonService.java b/pythonforandroid/bootstraps/sdl2/build/src/org/kivy/android/PythonService.java index f8dde3e0d2..3b9009f6cb 100644 --- a/pythonforandroid/bootstraps/sdl2/build/src/org/kivy/android/PythonService.java +++ b/pythonforandroid/bootstraps/sdl2/build/src/org/kivy/android/PythonService.java @@ -88,12 +88,24 @@ protected void doStartForeground(Bundle extras) { String serviceDescription = extras.getString("serviceDescription"); Context context = getApplicationContext(); + /* Notification notification = new Notification(context.getApplicationInfo().icon, serviceTitle, System.currentTimeMillis()); + */ Intent contextIntent = new Intent(context, PythonActivity.class); PendingIntent pIntent = PendingIntent.getActivity(context, 0, contextIntent, PendingIntent.FLAG_UPDATE_CURRENT); - notification.setLatestEventInfo(context, serviceTitle, serviceDescription, pIntent); + //notification.setLatestEventInfo(context, serviceTitle, serviceDescription, pIntent); + + Notification.Builder builder = new Notification.Builder(context); + builder.setContentTitle(serviceTitle); + builder.setContentText(serviceDescription); + builder.setContentIntent(pIntent); + builder.setSmallIcon(context.getApplicationInfo().icon); + //builder.setLargeIcon(); + + Notification notification = builder.build(); + startForeground(1, notification); } diff --git a/pythonforandroid/bootstraps/sdl2/build/templates/Service.tmpl.java b/pythonforandroid/bootstraps/sdl2/build/templates/Service.tmpl.java index bf87996212..8b34532932 100644 --- a/pythonforandroid/bootstraps/sdl2/build/templates/Service.tmpl.java +++ b/pythonforandroid/bootstraps/sdl2/build/templates/Service.tmpl.java @@ -27,12 +27,25 @@ public boolean canDisplayNotification() { @Override protected void doStartForeground(Bundle extras) { Context context = getApplicationContext(); + /* Notification notification = new Notification(context.getApplicationInfo().icon, "{{ args.name }}", System.currentTimeMillis()); + */ Intent contextIntent = new Intent(context, PythonActivity.class); PendingIntent pIntent = PendingIntent.getActivity(context, 0, contextIntent, PendingIntent.FLAG_UPDATE_CURRENT); - notification.setLatestEventInfo(context, "{{ args.name }}", "{{ name| capitalize }}", pIntent); + //notification.setLatestEventInfo(context, "{{ args.name }}", "{{ name| capitalize }}", pIntent); + PackageManager pm = context.getPackageManager(); + + Notification.Builder builder = new Notification.Builder(context); + builder.setContentTitle("{{ args.name }}"); + builder.setContentText("{{ name| capitalize }}"); + builder.setContentIntent(pIntent); + builder.setSmallIcon(context.getApplicationInfo().icon); + //builder.setLargeIcon(); + + Notification notification = builder.build(); + startForeground({{ service_id }}, notification); } diff --git a/pythonforandroid/bootstraps/webview/build/src/org/kivy/android/PythonService.java b/pythonforandroid/bootstraps/webview/build/src/org/kivy/android/PythonService.java index f8dde3e0d2..3b9009f6cb 100644 --- a/pythonforandroid/bootstraps/webview/build/src/org/kivy/android/PythonService.java +++ b/pythonforandroid/bootstraps/webview/build/src/org/kivy/android/PythonService.java @@ -88,12 +88,24 @@ protected void doStartForeground(Bundle extras) { String serviceDescription = extras.getString("serviceDescription"); Context context = getApplicationContext(); + /* Notification notification = new Notification(context.getApplicationInfo().icon, serviceTitle, System.currentTimeMillis()); + */ Intent contextIntent = new Intent(context, PythonActivity.class); PendingIntent pIntent = PendingIntent.getActivity(context, 0, contextIntent, PendingIntent.FLAG_UPDATE_CURRENT); - notification.setLatestEventInfo(context, serviceTitle, serviceDescription, pIntent); + //notification.setLatestEventInfo(context, serviceTitle, serviceDescription, pIntent); + + Notification.Builder builder = new Notification.Builder(context); + builder.setContentTitle(serviceTitle); + builder.setContentText(serviceDescription); + builder.setContentIntent(pIntent); + builder.setSmallIcon(context.getApplicationInfo().icon); + //builder.setLargeIcon(); + + Notification notification = builder.build(); + startForeground(1, notification); } diff --git a/pythonforandroid/bootstraps/webview/build/templates/Service.tmpl.java b/pythonforandroid/bootstraps/webview/build/templates/Service.tmpl.java index bf87996212..a7737bdc34 100644 --- a/pythonforandroid/bootstraps/webview/build/templates/Service.tmpl.java +++ b/pythonforandroid/bootstraps/webview/build/templates/Service.tmpl.java @@ -27,12 +27,24 @@ public boolean canDisplayNotification() { @Override protected void doStartForeground(Bundle extras) { Context context = getApplicationContext(); + /* Notification notification = new Notification(context.getApplicationInfo().icon, "{{ args.name }}", System.currentTimeMillis()); + */ Intent contextIntent = new Intent(context, PythonActivity.class); PendingIntent pIntent = PendingIntent.getActivity(context, 0, contextIntent, PendingIntent.FLAG_UPDATE_CURRENT); - notification.setLatestEventInfo(context, "{{ args.name }}", "{{ name| capitalize }}", pIntent); + //notification.setLatestEventInfo(context, "{{ args.name }}", "{{ name| capitalize }}", pIntent); + + Notification.Builder builder = new Notification.Builder(context); + builder.setContentTitle("{{ args.name }}"); + builder.setContentText("{{ name| capitalize }}"); + builder.setContentIntent(pIntent); + builder.setSmallIcon(context.getApplicationInfo().icon); + //builder.setLargeIcon(); + + Notification notification = builder.build(); + startForeground({{ service_id }}, notification); }