From dc3d1af171e5ec82162abde5cb05793ab67bcfd5 Mon Sep 17 00:00:00 2001 From: Legementarion Date: Mon, 26 Mar 2018 10:44:24 +0300 Subject: [PATCH] cleanup --- build.gradle | 4 ++ sample/build.gradle | 5 +- .../yalantis/ucrop/sample/ResultActivity.java | 49 +++++++++++++------ sample/src/main/res/values/strings.xml | 2 + 4 files changed, 44 insertions(+), 16 deletions(-) diff --git a/build.gradle b/build.gradle index 3911fe991..76038f24e 100644 --- a/build.gradle +++ b/build.gradle @@ -14,6 +14,10 @@ buildscript { // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } + ext { + support = '27.1.0' + constraints = '1.0.2' + } } def isReleaseBuild() { diff --git a/sample/build.gradle b/sample/build.gradle index 29c75b53d..05bddd63f 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -35,7 +35,8 @@ android { } dependencies { - implementation 'com.android.support:appcompat-v7:27.1.0' + implementation "com.android.support:appcompat-v7:$support" + implementation "com.android.support:support-compat:$support" + implementation "com.android.support.constraint:constraint-layout:$constraints" compile project(':ucrop') - compile 'com.android.support.constraint:constraint-layout:1.0.2' } \ No newline at end of file diff --git a/sample/src/main/java/com/yalantis/ucrop/sample/ResultActivity.java b/sample/src/main/java/com/yalantis/ucrop/sample/ResultActivity.java index 352d19d8e..5b52fa78b 100755 --- a/sample/src/main/java/com/yalantis/ucrop/sample/ResultActivity.java +++ b/sample/src/main/java/com/yalantis/ucrop/sample/ResultActivity.java @@ -1,6 +1,7 @@ package com.yalantis.ucrop.sample; import android.Manifest; +import android.app.NotificationChannel; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; @@ -10,6 +11,7 @@ import android.graphics.BitmapFactory; import android.graphics.Color; import android.net.Uri; +import android.os.Build; import android.os.Bundle; import android.os.Environment; import android.support.annotation.NonNull; @@ -41,6 +43,7 @@ public class ResultActivity extends BaseActivity { private static final String TAG = "ResultActivity"; + private static final String CHANNEL_ID = "3000"; private static final int DOWNLOAD_NOTIFICATION_ID_DONE = 911; public static void startWithUri(@NonNull Context context, @NonNull Uri uri) { @@ -53,18 +56,19 @@ public static void startWithUri(@NonNull Context context, @NonNull Uri uri) { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_result); - - try { - UCropView uCropView = findViewById(R.id.ucrop); - uCropView.getCropImageView().setImageUri(getIntent().getData(), null); - uCropView.getOverlayView().setShowCropFrame(false); - uCropView.getOverlayView().setShowCropGrid(false); - uCropView.getOverlayView().setDimmedColor(Color.TRANSPARENT); - } catch (Exception e) { - Log.e(TAG, "setImageUri", e); - Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show(); + Uri uri = getIntent().getData(); + if (uri != null) { + try { + UCropView uCropView = findViewById(R.id.ucrop); + uCropView.getCropImageView().setImageUri(getIntent().getData(), null); + uCropView.getOverlayView().setShowCropFrame(false); + uCropView.getOverlayView().setShowCropGrid(false); + uCropView.getOverlayView().setDimmedColor(Color.TRANSPARENT); + } catch (Exception e) { + Log.e(TAG, "setImageUri", e); + Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show(); + } } - final BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeFile(new File(getIntent().getData().getPath()).getAbsolutePath(), options); @@ -167,9 +171,24 @@ private void showNotification(@NonNull File file) { fileUri, FLAG_GRANT_WRITE_URI_PERMISSION | FLAG_GRANT_READ_URI_PERMISSION); } - NotificationCompat.Builder mNotification = new NotificationCompat.Builder(this); + NotificationCompat.Builder notificationBuilder; + NotificationManager notificationManager = (NotificationManager) this + .getSystemService(Context.NOTIFICATION_SERVICE); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + int importance = NotificationManager.IMPORTANCE_LOW; + NotificationChannel mChannel = new NotificationChannel(CHANNEL_ID, getString(R.string.channel_name), importance); + mChannel.setDescription(getString(R.string.channel_description)); + mChannel.enableLights(true); + mChannel.setLightColor(Color.YELLOW); + if (notificationManager != null) { + notificationManager.createNotificationChannel(mChannel); + } + notificationBuilder = new NotificationCompat.Builder(this, CHANNEL_ID); + } else { + notificationBuilder = new NotificationCompat.Builder(this); + } - mNotification + notificationBuilder .setContentTitle(getString(R.string.app_name)) .setContentText(getString(R.string.notification_image_saved_click_to_preview)) .setTicker(getString(R.string.notification_image_saved)) @@ -177,7 +196,9 @@ private void showNotification(@NonNull File file) { .setOngoing(false) .setContentIntent(PendingIntent.getActivity(this, 0, intent, 0)) .setAutoCancel(true); - ((NotificationManager) getSystemService(NOTIFICATION_SERVICE)).notify(DOWNLOAD_NOTIFICATION_ID_DONE, mNotification.build()); + if (notificationManager != null) { + notificationManager.notify(DOWNLOAD_NOTIFICATION_ID_DONE, notificationBuilder.build()); + } } } diff --git a/sample/src/main/res/values/strings.xml b/sample/src/main/res/values/strings.xml index 5906493ad..5cd910c61 100644 --- a/sample/src/main/res/values/strings.xml +++ b/sample/src/main/res/values/strings.xml @@ -42,4 +42,6 @@ Unexpected error com.yalantis.ucrop.provider + ucrop_chanel + ucrop result image