From 6a3dab4623f2b83932a7c980fc854f5d9a88e966 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Wed, 26 Sep 2018 09:27:08 +0800 Subject: [PATCH] migrate to androidx artifacts --- .idea/codeStyles/codeStyleConfig.xml | 5 ++++ app/build.gradle | 20 ++++++++-------- .../shelter/ExampleInstrumentedTest.java | 4 ++-- .../shelter/services/FileShuttleService.java | 4 ++-- .../shelter/services/KillerService.java | 3 ++- .../shelter/services/ShelterService.java | 3 ++- .../typeblog/shelter/ui/AppListAdapter.java | 5 ++-- .../typeblog/shelter/ui/AppListFragment.java | 17 ++++++------- .../typeblog/shelter/ui/DummyActivity.java | 6 ++--- .../net/typeblog/shelter/ui/MainActivity.java | 24 +++++++++---------- .../typeblog/shelter/ui/SettingsActivity.java | 5 ++-- .../typeblog/shelter/ui/SettingsFragment.java | 7 +++--- .../util/CrossProfileDocumentsProvider.java | 4 ++-- .../shelter/util/FileProviderProxy.java | 6 ++--- .../net/typeblog/shelter/util/Utility.java | 1 - app/src/main/res/layout/activity_main.xml | 14 +++++------ app/src/main/res/layout/activity_settings.xml | 10 ++++---- app/src/main/res/layout/app_list_item.xml | 4 ++-- app/src/main/res/layout/fragment_list.xml | 10 ++++---- app/src/main/res/xml/preferences_settings.xml | 20 ++++++++-------- gradle.properties | 2 ++ 21 files changed, 93 insertions(+), 81 deletions(-) create mode 100644 .idea/codeStyles/codeStyleConfig.xml diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..a55e7a1 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 1069af8..eb142f7 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,7 +9,7 @@ android { targetSdkVersion 28 versionCode 8 versionName "1.3-alpha" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { @@ -33,14 +33,14 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:support-core-ui:28.0.0-rc02' - implementation 'com.android.support:support-fragment:28.0.0-rc02' - implementation 'com.android.support:appcompat-v7:28.0.0-rc02' - implementation 'com.android.support:preference-v7:28.0.0-rc02' - implementation 'com.android.support.constraint:constraint-layout:1.1.3' - implementation 'com.android.support:design:28.0.0-rc02' - implementation 'com.android.support:localbroadcastmanager:28.0.0-rc02' + implementation 'androidx.legacy:legacy-support-core-ui:1.0.0' + implementation 'androidx.fragment:fragment:1.0.0' + implementation 'androidx.appcompat:appcompat:1.0.0' + implementation 'androidx.preference:preference:1.0.0' + implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2' + implementation 'com.google.android.material:material:1.0.0' + implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0' testImplementation 'junit:junit:4.12' - androidTestImplementation 'com.android.support.test:runner:1.0.2' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' + androidTestImplementation 'androidx.test:runner:1.1.0-alpha4' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4' } diff --git a/app/src/androidTest/java/net/typeblog/shelter/ExampleInstrumentedTest.java b/app/src/androidTest/java/net/typeblog/shelter/ExampleInstrumentedTest.java index a7e6942..78c216f 100644 --- a/app/src/androidTest/java/net/typeblog/shelter/ExampleInstrumentedTest.java +++ b/app/src/androidTest/java/net/typeblog/shelter/ExampleInstrumentedTest.java @@ -1,8 +1,8 @@ package net.typeblog.shelter; import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; +import androidx.test.InstrumentationRegistry; +import androidx.test.runner.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/app/src/main/java/net/typeblog/shelter/services/FileShuttleService.java b/app/src/main/java/net/typeblog/shelter/services/FileShuttleService.java index 67864e2..a9753b6 100644 --- a/app/src/main/java/net/typeblog/shelter/services/FileShuttleService.java +++ b/app/src/main/java/net/typeblog/shelter/services/FileShuttleService.java @@ -12,12 +12,12 @@ import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.os.ParcelFileDescriptor; -import android.os.RemoteException; import android.provider.DocumentsContract; import android.provider.MediaStore; -import android.support.annotation.Nullable; import android.webkit.MimeTypeMap; +import androidx.annotation.Nullable; + import net.typeblog.shelter.ShelterApplication; import net.typeblog.shelter.util.CrossProfileDocumentsProvider; import net.typeblog.shelter.util.Utility; diff --git a/app/src/main/java/net/typeblog/shelter/services/KillerService.java b/app/src/main/java/net/typeblog/shelter/services/KillerService.java index 5074a8e..66b4182 100644 --- a/app/src/main/java/net/typeblog/shelter/services/KillerService.java +++ b/app/src/main/java/net/typeblog/shelter/services/KillerService.java @@ -4,7 +4,8 @@ import android.app.Service; import android.content.Intent; import android.os.Bundle; import android.os.IBinder; -import android.support.annotation.Nullable; + +import androidx.annotation.Nullable; import net.typeblog.shelter.util.Utility; diff --git a/app/src/main/java/net/typeblog/shelter/services/ShelterService.java b/app/src/main/java/net/typeblog/shelter/services/ShelterService.java index 5b7debb..3de2045 100644 --- a/app/src/main/java/net/typeblog/shelter/services/ShelterService.java +++ b/app/src/main/java/net/typeblog/shelter/services/ShelterService.java @@ -17,7 +17,8 @@ import android.os.Build; import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; -import android.support.annotation.Nullable; + +import androidx.annotation.Nullable; import net.typeblog.shelter.R; import net.typeblog.shelter.ShelterApplication; diff --git a/app/src/main/java/net/typeblog/shelter/ui/AppListAdapter.java b/app/src/main/java/net/typeblog/shelter/ui/AppListAdapter.java index efc4fe3..1fe1da8 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/AppListAdapter.java +++ b/app/src/main/java/net/typeblog/shelter/ui/AppListAdapter.java @@ -5,14 +5,15 @@ import android.graphics.drawable.Drawable; import android.os.Handler; import android.os.Looper; import android.os.RemoteException; -import android.support.annotation.NonNull; -import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + import net.typeblog.shelter.R; import net.typeblog.shelter.services.ILoadIconCallback; import net.typeblog.shelter.services.IShelterService; diff --git a/app/src/main/java/net/typeblog/shelter/ui/AppListFragment.java b/app/src/main/java/net/typeblog/shelter/ui/AppListFragment.java index 8976dc7..ba4459b 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/AppListFragment.java +++ b/app/src/main/java/net/typeblog/shelter/ui/AppListFragment.java @@ -12,14 +12,6 @@ import android.graphics.drawable.Icon; import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.support.v4.content.LocalBroadcastManager; -import android.support.v4.widget.SwipeRefreshLayout; -import android.support.v7.app.AlertDialog; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.view.ContextMenu; import android.view.LayoutInflater; import android.view.Menu; @@ -28,6 +20,15 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Toast; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AlertDialog; +import androidx.fragment.app.Fragment; +import androidx.localbroadcastmanager.content.LocalBroadcastManager; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; +import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; + import net.typeblog.shelter.R; import net.typeblog.shelter.services.IAppInstallCallback; import net.typeblog.shelter.services.IGetAppsCallback; diff --git a/app/src/main/java/net/typeblog/shelter/ui/DummyActivity.java b/app/src/main/java/net/typeblog/shelter/ui/DummyActivity.java index e11d468..f7de282 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/DummyActivity.java +++ b/app/src/main/java/net/typeblog/shelter/ui/DummyActivity.java @@ -13,14 +13,14 @@ import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; import android.os.StrictMode; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; import android.widget.Toast; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import net.typeblog.shelter.R; import net.typeblog.shelter.ShelterApplication; import net.typeblog.shelter.receivers.ShelterDeviceAdminReceiver; -import net.typeblog.shelter.services.FileShuttleService; import net.typeblog.shelter.services.IAppInstallCallback; import net.typeblog.shelter.services.IFileShuttleService; import net.typeblog.shelter.services.IFileShuttleServiceCallback; diff --git a/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java b/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java index 5c14ef2..b2a0908 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java +++ b/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java @@ -7,23 +7,25 @@ import android.content.Intent; import android.content.ServiceConnection; import android.graphics.drawable.Icon; import android.net.Uri; +import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; -import android.support.annotation.Nullable; -import android.support.design.widget.TabLayout; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentManager; -import android.support.v4.app.FragmentPagerAdapter; -import android.support.v4.content.LocalBroadcastManager; -import android.support.v4.view.ViewPager; -import android.support.v7.app.AlertDialog; -import android.support.v7.app.AppCompatActivity; -import android.os.Bundle; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.widget.Toast; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AlertDialog; +import androidx.appcompat.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentPagerAdapter; +import androidx.localbroadcastmanager.content.LocalBroadcastManager; +import androidx.viewpager.widget.ViewPager; + +import com.google.android.material.tabs.TabLayout; + import net.typeblog.shelter.R; import net.typeblog.shelter.ShelterApplication; import net.typeblog.shelter.receivers.ShelterDeviceAdminReceiver; @@ -36,8 +38,6 @@ import net.typeblog.shelter.util.SettingsManager; import net.typeblog.shelter.util.UriForwardProxy; import net.typeblog.shelter.util.Utility; -import java.io.IOException; - public class MainActivity extends AppCompatActivity { public static final String BROADCAST_CONTEXT_MENU_CLOSED = "net.typeblog.shelter.broadcast.CONTEXT_MENU_CLOSED"; diff --git a/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java b/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java index 121b305..435a38d 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java @@ -1,8 +1,9 @@ package net.typeblog.shelter.ui; import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatActivity; + +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; import net.typeblog.shelter.R; diff --git a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java index d2c6a23..8eefc6a 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java @@ -4,9 +4,10 @@ import android.content.Intent; import android.content.pm.PackageManager; import android.net.Uri; import android.os.Bundle; -import android.support.v7.preference.CheckBoxPreference; -import android.support.v7.preference.Preference; -import android.support.v7.preference.PreferenceFragmentCompat; + +import androidx.preference.CheckBoxPreference; +import androidx.preference.Preference; +import androidx.preference.PreferenceFragmentCompat; import net.typeblog.shelter.R; import net.typeblog.shelter.util.SettingsManager; diff --git a/app/src/main/java/net/typeblog/shelter/util/CrossProfileDocumentsProvider.java b/app/src/main/java/net/typeblog/shelter/util/CrossProfileDocumentsProvider.java index c29c240..aba2961 100644 --- a/app/src/main/java/net/typeblog/shelter/util/CrossProfileDocumentsProvider.java +++ b/app/src/main/java/net/typeblog/shelter/util/CrossProfileDocumentsProvider.java @@ -13,7 +13,8 @@ import android.os.ParcelFileDescriptor; import android.os.RemoteException; import android.provider.DocumentsContract; import android.provider.DocumentsProvider; -import android.support.annotation.Nullable; + +import androidx.annotation.Nullable; import net.typeblog.shelter.R; import net.typeblog.shelter.services.FileShuttleService; @@ -21,7 +22,6 @@ import net.typeblog.shelter.services.IFileShuttleService; import net.typeblog.shelter.services.IFileShuttleServiceCallback; import net.typeblog.shelter.ui.DummyActivity; -import java.io.FileNotFoundException; import java.util.List; import java.util.Map; diff --git a/app/src/main/java/net/typeblog/shelter/util/FileProviderProxy.java b/app/src/main/java/net/typeblog/shelter/util/FileProviderProxy.java index 116c0c4..a2237f4 100644 --- a/app/src/main/java/net/typeblog/shelter/util/FileProviderProxy.java +++ b/app/src/main/java/net/typeblog/shelter/util/FileProviderProxy.java @@ -2,11 +2,11 @@ package net.typeblog.shelter.util; import android.net.Uri; import android.os.ParcelFileDescriptor; -import android.support.annotation.NonNull; -import android.support.v4.content.FileProvider; + +import androidx.annotation.NonNull; +import androidx.core.content.FileProvider; import java.io.FileNotFoundException; -import java.io.IOException; // A simple and naïve FileProvider which forwards content Uris // to a given Uri from another profile through UriForwardProxy diff --git a/app/src/main/java/net/typeblog/shelter/util/Utility.java b/app/src/main/java/net/typeblog/shelter/util/Utility.java index 19ef19d..67705b3 100644 --- a/app/src/main/java/net/typeblog/shelter/util/Utility.java +++ b/app/src/main/java/net/typeblog/shelter/util/Utility.java @@ -17,7 +17,6 @@ import android.graphics.Canvas; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.graphics.drawable.Icon; -import android.net.Uri; import android.os.Build; import android.os.UserManager; import android.provider.MediaStore; diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 83608bb..347ec1c 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,19 +1,19 @@ - - - - - + - - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml index d62e8ac..4a4b2bc 100644 --- a/app/src/main/res/layout/activity_settings.xml +++ b/app/src/main/res/layout/activity_settings.xml @@ -1,16 +1,16 @@ - - - - + - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/app_list_item.xml b/app/src/main/res/layout/app_list_item.xml index 6f69195..47e637e 100644 --- a/app/src/main/res/layout/app_list_item.xml +++ b/app/src/main/res/layout/app_list_item.xml @@ -1,5 +1,5 @@ - - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_list.xml b/app/src/main/res/layout/fragment_list.xml index 8f3b166..d2cfa48 100644 --- a/app/src/main/res/layout/fragment_list.xml +++ b/app/src/main/res/layout/fragment_list.xml @@ -1,10 +1,10 @@ - - - - + - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/xml/preferences_settings.xml b/app/src/main/res/xml/preferences_settings.xml index 42bca5e..934e6bc 100644 --- a/app/src/main/res/xml/preferences_settings.xml +++ b/app/src/main/res/xml/preferences_settings.xml @@ -1,34 +1,34 @@ - - - - + - - - - - + - \ No newline at end of file + \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 743d692..8de5058 100644 --- a/gradle.properties +++ b/gradle.properties @@ -6,6 +6,8 @@ # http://www.gradle.org/docs/current/userguide/build_environment.html # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. +android.enableJetifier=true +android.useAndroidX=true org.gradle.jvmargs=-Xmx1536m # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit