ostownsville / cordova-plugin-fcm

Google FCM Push Notifications Cordova Plugin
21 stars 17 forks source link

New requirement for Android: Target SDK: 26 #39

Closed luigi37 closed 6 years ago

luigi37 commented 6 years ago

Hi, I've just read this: https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html

In which it's mentioned that by August we will need to use a target SDK of 26

Currently it's 25...

Would that affect the functionality of this plugin being linked to a specific cordova and android version?

vbraun commented 6 years ago

One thing that I found out the hard way with 26 is that you now have to call NotificationManager.createNotificationChannel(), ideally during plugin initialization. Otherwise you get either nothing, or a toast telling you that you must create a channel (the latter is a switch in the Android developer setting). I hacked it into my own fork at https://github.com/vbraun/cordova-plugin-fcm/commit/c57c3db493fa327f42a10ebee0b20c2e1926a336. Note that the channel also carries a human-readable name, which probably should be configurable in a polished solution.

luigi37 commented 6 years ago

Thanks vbraun. I understand you have been succesfully compiling and running Android app with higher cordova and platform versions. Which versions did you use for

vbraun commented 6 years ago

I'm using it with cordova 6.5.0, cordova-android 6.4.0, no ios. I haven't updated cordova yet since I'm using another plugin that doesn't support >=7 yet...

luigi37 commented 6 years ago

Thanks. Mentioned here https://github.com/ostownsville/cordova-plugin-fcm/issues/40 We should get an update for new versions

luigi37 commented 6 years ago

Hi all, anyone could compile properly with API 26? August deadline is approaching soon for the Google store....

luigi37 commented 6 years ago

Hi all, just in case anyone is interested... in reality nothing is needed to be compliant with the Google Play store except adding to config.xml the two lines

<preference name="android-minSdkVersion" value="16" />
<preference name="android-targetSdkVersion" value="26" />

No change in the rest and no need to update Cordova or Android platform..

So, as per today I confirm all works good with Android 8.0 and iOS 11.4 (iPhone 5S) with Cordova 7.0.1 android 6.2.3 ios 4.5.0 cordova-plugin-fcm 3.0.3 "FCMPlugin"

luigi37 commented 6 years ago

Note... only target version is needed, don't put also min-version at 26 or you will be able to serve only few devices...