fix compatibility for Android API 14 with supporting API 23

using ``NotificationCompat`` in ``support-v4`` library will increase APK filesize a little bit, but it guarantees to run OK with API 4+
tested with API 19 and 23 devices
This commit is contained in:
volzhs 2016-05-24 11:22:35 +09:00
parent 160713d4d3
commit ff67c256f5
5 changed files with 14 additions and 12 deletions

View file

@ -200,6 +200,6 @@ $$ADD_PERMISSION_CHUNKS$$
<uses-permission android:name="godot.custom.18"/>
<uses-permission android:name="godot.custom.19"/>
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19"/>
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="23"/>
</manifest>

View file

@ -17,7 +17,7 @@ allprojects {
}
dependencies {
compile 'com.android.support:support-v4:23.+'
$$GRADLE_DEPENDENCIES$$
}

View file

@ -146,11 +146,11 @@ public class LicenseChecker implements ServiceConnection {
if (mService == null) {
Log.i(TAG, "Binding to licensing service.");
try {
Intent serviceIntent = new Intent(new String(Base64.decode("Y29tLmFuZHJvaWQudmVuZGluZy5saWNlbnNpbmcuSUxpY2Vuc2luZ1NlcnZpY2U=")));
serviceIntent.setPackage("com.android.vending");
boolean bindResult = mContext
.bindService(
new Intent(
new String(
Base64.decode("Y29tLmFuZHJvaWQudmVuZGluZy5saWNlbnNpbmcuSUxpY2Vuc2luZ1NlcnZpY2U="))),
serviceIntent,
this, // ServiceConnection.
Context.BIND_AUTO_CREATE);

View file

@ -27,6 +27,7 @@ import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.os.Messenger;
import android.support.v4.app.NotificationCompat;
/**
* This class handles displaying the notification associated with the download
@ -48,8 +49,8 @@ public class DownloadNotification implements IDownloaderClient {
private IDownloaderClient mClientProxy;
final ICustomNotification mCustomNotification;
private Notification.Builder mNotificationBuilder;
private Notification.Builder mCurrentNotificationBuilder;
private NotificationCompat.Builder mNotificationBuilder;
private NotificationCompat.Builder mCurrentNotificationBuilder;
private CharSequence mLabel;
private String mCurrentText;
private PendingIntent mContentIntent;
@ -185,7 +186,7 @@ public class DownloadNotification implements IDownloaderClient {
void setTimeRemaining(long timeRemaining);
Notification.Builder updateNotification(Context c);
NotificationCompat.Builder updateNotification(Context c);
}
/**
@ -218,7 +219,7 @@ public class DownloadNotification implements IDownloaderClient {
mContext.getSystemService(Context.NOTIFICATION_SERVICE);
mCustomNotification = CustomNotificationFactory
.createCustomNotification();
mNotificationBuilder = new Notification.Builder(ctx);
mNotificationBuilder = new NotificationCompat.Builder(ctx);
mCurrentNotificationBuilder = mNotificationBuilder;
}

View file

@ -22,6 +22,7 @@ import com.google.android.vending.expansion.downloader.Helpers;
import android.app.Notification;
import android.app.PendingIntent;
import android.content.Context;
import android.support.v4.app.NotificationCompat;
public class V14CustomNotification implements DownloadNotification.ICustomNotification {
@ -53,13 +54,13 @@ public class V14CustomNotification implements DownloadNotification.ICustomNotifi
mCurrentKB = currentBytes;
}
void setProgress(Notification.Builder builder) {
void setProgress(NotificationCompat.Builder builder) {
}
@Override
public Notification.Builder updateNotification(Context c) {
Notification.Builder builder = new Notification.Builder(c);
public NotificationCompat.Builder updateNotification(Context c) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(c);
builder.setContentTitle(mTitle);
if (mTotalKB > 0 && -1 != mCurrentKB) {
builder.setProgress((int) (mTotalKB >> 8), (int) (mCurrentKB >> 8), false);