Updater: Move to AndroidX

Change-Id: I7bd67915638db5330b854f66f9fc1adb864b64be
This commit is contained in:
Luca Stefani
2019-09-07 19:02:37 +02:00
parent 56349fabc5
commit 91f33aa03e
18 changed files with 73 additions and 71 deletions

View File

@@ -9,13 +9,12 @@ LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_USE_AAPT2 := true LOCAL_USE_AAPT2 := true
LOCAL_STATIC_ANDROID_LIBRARIES := \ LOCAL_STATIC_ANDROID_LIBRARIES := \
android-support-design \ com.google.android.material_material \
android-support-transition \ androidx.core_core \
android-support-v4 \ androidx.appcompat_appcompat \
android-support-v7-appcompat \ androidx.cardview_cardview \
android-support-v7-cardview \ androidx.preference_preference \
android-support-v7-preference \ androidx.recyclerview_recyclerview \
android-support-v7-recyclerview
LOCAL_RESOURCE_DIR := \ LOCAL_RESOURCE_DIR := \
$(LOCAL_PATH)/res $(LOCAL_PATH)/res
@@ -37,13 +36,10 @@ updater_system_libs_path := $(abspath $(LOCAL_PATH))/system_libs
include $(BUILD_SYSTEM)/base_rules.mk include $(BUILD_SYSTEM)/base_rules.mk
.PHONY: copy_updater_system_deps $(LOCAL_BUILT_MODULE): $(updater_system_deps)
copy_updater_system_deps: $(updater_system_deps)
$(hide) mkdir -p $(updater_system_libs_path) $(hide) mkdir -p $(updater_system_libs_path)
$(hide) rm -rf $(updater_system_libs_path)/*.jar $(hide) rm -rf $(updater_system_libs_path)/*.jar
$(hide) cp $(updater_system_deps) $(updater_system_libs_path)/framework.jar $(hide) cp $(updater_system_deps) $(updater_system_libs_path)/framework.jar
$(LOCAL_BUILT_MODULE): copy_updater_system_deps
$(hide) echo "Fake: $@" $(hide) echo "Fake: $@"
$(hide) mkdir -p $(dir $@) $(hide) mkdir -p $(dir $@)
$(hide) touch $@ $(hide) touch $@

View File

@@ -10,7 +10,7 @@ buildscript {
} }
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:3.1.0' classpath 'com.android.tools.build:gradle:3.5.0'
} }
} }
@@ -21,12 +21,11 @@ keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
android { android {
compileSdkVersion 27 compileSdkVersion 29
buildToolsVersion '27.0.3'
defaultConfig { defaultConfig {
minSdkVersion 27 minSdkVersion 27
targetSdkVersion 27 targetSdkVersion 29
} }
lintOptions { lintOptions {
@@ -61,10 +60,9 @@ android {
dependencies { dependencies {
compileOnly fileTree(dir: 'system_libs/', include: ['*.jar']) compileOnly fileTree(dir: 'system_libs/', include: ['*.jar'])
def supportLibVersion = "27.1.0" implementation 'com.google.android.material:material:1.0.0'
implementation "com.android.support:appcompat-v7:${supportLibVersion}" implementation 'androidx.appcompat:appcompat:1.1.0'
implementation "com.android.support:cardview-v7:${supportLibVersion}" implementation 'androidx.cardview:cardview:1.0.0'
implementation "com.android.support:design:${supportLibVersion}" implementation 'androidx.preference:preference:1.1.0'
implementation "com.android.support:preference-v7:${supportLibVersion}" implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation "com.android.support:recyclerview-v7:${supportLibVersion}"
} }

2
gradle.properties Normal file
View File

@@ -0,0 +1,2 @@
android.enableJetifier=true
android.useAndroidX=true

View File

@@ -1,4 +1 @@
-keep class android.support.design.widget.** { *; }
-keep interface android.support.design.widget.** { *; }
-keep class org.lineageos.updater.ui.FlingBehavior { *; } -keep class org.lineageos.updater.ui.FlingBehavior { *; }

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout <androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_container" android:id="@+id/main_container"
@@ -7,14 +7,14 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:fitsSystemWindows="true"> android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout <com.google.android.material.appbar.AppBarLayout
android:id="@+id/app_bar" android:id="@+id/app_bar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:fitsSystemWindows="true" android:fitsSystemWindows="true"
app:layout_behavior="org.lineageos.updater.ui.FlingBehavior"> app:layout_behavior="org.lineageos.updater.ui.FlingBehavior">
<android.support.design.widget.CollapsingToolbarLayout <com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar" android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
@@ -67,16 +67,16 @@
android:textSize="12sp" /> android:textSize="12sp" />
</RelativeLayout> </RelativeLayout>
<android.support.v7.widget.Toolbar <androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:textColor="?android:attr/textColorPrimary" android:textColor="?android:attr/textColorPrimary"
app:layout_collapseMode="pin" /> app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout> </com.google.android.material.appbar.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout> </com.google.android.material.appbar.AppBarLayout>
<android.support.v4.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:id="@+id/no_new_updates_view" android:id="@+id/no_new_updates_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
@@ -89,9 +89,9 @@
android:gravity="center" android:gravity="center"
android:text="@string/list_no_updates" android:text="@string/list_no_updates"
android:textColor="?android:textColorSecondary" /> android:textColor="?android:textColorSecondary" />
</android.support.v4.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
<android.support.v7.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view" android:id="@+id/recycler_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
@@ -99,4 +99,4 @@
android:paddingBottom="5dp" android:paddingBottom="5dp"
android:scrollbars="vertical" android:scrollbars="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior" /> app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout> </androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView <androidx.cardview.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
@@ -87,4 +87,4 @@
android:padding="8dp" android:padding="8dp"
tools:text="Pause" /> tools:text="Pause" />
</LinearLayout> </LinearLayout>
</android.support.v7.widget.CardView> </androidx.cardview.widget.CardView>

View File

@@ -22,10 +22,11 @@ import android.app.Service;
import android.content.Intent; import android.content.Intent;
import android.os.IBinder; import android.os.IBinder;
import android.os.SystemClock; import android.os.SystemClock;
import android.support.v4.app.NotificationCompat;
import android.util.Log; import android.util.Log;
import android.widget.Toast; import android.widget.Toast;
import androidx.core.app.NotificationCompat;
import org.lineageos.updater.misc.FileUtils; import org.lineageos.updater.misc.FileUtils;
import java.io.File; import java.io.File;

View File

@@ -24,8 +24,9 @@ import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.os.PowerManager; import android.os.PowerManager;
import android.os.SystemProperties; import android.os.SystemProperties;
import android.support.v4.app.NotificationCompat;
import android.support.v7.preference.PreferenceManager; import androidx.core.app.NotificationCompat;
import androidx.preference.PreferenceManager;
import org.lineageos.updater.misc.BuildInfoUtils; import org.lineageos.updater.misc.BuildInfoUtils;
import org.lineageos.updater.misc.Constants; import org.lineageos.updater.misc.Constants;

View File

@@ -27,16 +27,6 @@ import android.net.Uri;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.os.IBinder; import android.os.IBinder;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CollapsingToolbarLayout;
import android.support.design.widget.Snackbar;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.app.AlertDialog;
import android.support.v7.preference.PreferenceManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.SimpleItemAnimator;
import android.support.v7.widget.Toolbar;
import android.util.Log; import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.Menu; import android.view.Menu;
@@ -49,6 +39,18 @@ import android.widget.Spinner;
import android.widget.Switch; import android.widget.Switch;
import android.widget.TextView; import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.widget.Toolbar;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import androidx.preference.PreferenceManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.SimpleItemAnimator;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout;
import com.google.android.material.snackbar.Snackbar;
import org.json.JSONException; import org.json.JSONException;
import org.lineageos.updater.controller.UpdaterController; import org.lineageos.updater.controller.UpdaterController;
import org.lineageos.updater.controller.UpdaterService; import org.lineageos.updater.controller.UpdaterService;

View File

@@ -25,20 +25,18 @@ import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.os.SystemClock; import android.os.SystemClock;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.support.v4.app.NotificationCompat;
import android.util.Log; import android.util.Log;
import androidx.core.app.NotificationCompat;
import org.json.JSONException; import org.json.JSONException;
import org.lineageos.updater.download.DownloadClient; import org.lineageos.updater.download.DownloadClient;
import org.lineageos.updater.misc.Constants; import org.lineageos.updater.misc.Constants;
import org.lineageos.updater.misc.Utils; import org.lineageos.updater.misc.Utils;
import org.lineageos.updater.model.UpdateInfo;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.UUID; import java.util.UUID;
public class UpdatesCheckReceiver extends BroadcastReceiver { public class UpdatesCheckReceiver extends BroadcastReceiver {

View File

@@ -15,7 +15,7 @@
*/ */
package org.lineageos.updater; package org.lineageos.updater;
import android.support.v7.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
public abstract class UpdatesListActivity extends AppCompatActivity { public abstract class UpdatesListActivity extends AppCompatActivity {
public abstract void showSnackbar(int stringId, int duration); public abstract void showSnackbar(int stringId, int duration);

View File

@@ -23,13 +23,6 @@ import android.content.res.Resources;
import android.os.BatteryManager; import android.os.BatteryManager;
import android.os.PowerManager; import android.os.PowerManager;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AlertDialog;
import android.support.v7.view.ContextThemeWrapper;
import android.support.v7.view.menu.MenuBuilder;
import android.support.v7.view.menu.MenuPopupHelper;
import android.support.v7.widget.PopupMenu;
import android.support.v7.widget.RecyclerView;
import android.text.SpannableString; import android.text.SpannableString;
import android.text.format.Formatter; import android.text.format.Formatter;
import android.text.method.LinkMovementMethod; import android.text.method.LinkMovementMethod;
@@ -45,6 +38,15 @@ import android.widget.CheckBox;
import android.widget.ProgressBar; import android.widget.ProgressBar;
import android.widget.TextView; import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.view.ContextThemeWrapper;
import androidx.appcompat.view.menu.MenuBuilder;
import androidx.appcompat.view.menu.MenuPopupHelper;
import androidx.appcompat.widget.PopupMenu;
import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.snackbar.Snackbar;
import org.lineageos.updater.controller.UpdaterController; import org.lineageos.updater.controller.UpdaterController;
import org.lineageos.updater.controller.UpdaterService; import org.lineageos.updater.controller.UpdaterService;
import org.lineageos.updater.misc.BuildInfoUtils; import org.lineageos.updater.misc.BuildInfoUtils;

View File

@@ -19,10 +19,11 @@ import android.content.Context;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.os.UpdateEngine; import android.os.UpdateEngine;
import android.os.UpdateEngineCallback; import android.os.UpdateEngineCallback;
import android.support.v7.preference.PreferenceManager;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import androidx.preference.PreferenceManager;
import org.lineageos.updater.misc.Constants; import org.lineageos.updater.misc.Constants;
import org.lineageos.updater.misc.Utils; import org.lineageos.updater.misc.Utils;
import org.lineageos.updater.model.Update; import org.lineageos.updater.model.Update;

View File

@@ -19,10 +19,10 @@ import android.content.Context;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.os.SystemClock; import android.os.SystemClock;
import android.os.SystemProperties; import android.os.SystemProperties;
import android.support.v7.preference.PreferenceManager;
import android.util.Log; import android.util.Log;
import org.lineageos.updater.R; import androidx.preference.PreferenceManager;
import org.lineageos.updater.misc.Constants; import org.lineageos.updater.misc.Constants;
import org.lineageos.updater.misc.FileUtils; import org.lineageos.updater.misc.FileUtils;
import org.lineageos.updater.misc.Utils; import org.lineageos.updater.misc.Utils;

View File

@@ -20,9 +20,10 @@ import android.content.Intent;
import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase;
import android.os.PowerManager; import android.os.PowerManager;
import android.os.SystemClock; import android.os.SystemClock;
import android.support.v4.content.LocalBroadcastManager;
import android.util.Log; import android.util.Log;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import org.lineageos.updater.UpdatesDbHelper; import org.lineageos.updater.UpdatesDbHelper;
import org.lineageos.updater.download.DownloadClient; import org.lineageos.updater.download.DownloadClient;
import org.lineageos.updater.misc.Utils; import org.lineageos.updater.misc.Utils;

View File

@@ -26,11 +26,12 @@ import android.content.IntentFilter;
import android.os.Binder; import android.os.Binder;
import android.os.Bundle; import android.os.Bundle;
import android.os.IBinder; import android.os.IBinder;
import android.support.v4.app.NotificationCompat;
import android.support.v4.content.LocalBroadcastManager;
import android.text.format.Formatter; import android.text.format.Formatter;
import android.util.Log; import android.util.Log;
import androidx.core.app.NotificationCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import org.lineageos.updater.R; import org.lineageos.updater.R;
import org.lineageos.updater.UpdaterReceiver; import org.lineageos.updater.UpdaterReceiver;
import org.lineageos.updater.UpdatesActivity; import org.lineageos.updater.UpdatesActivity;

View File

@@ -37,8 +37,8 @@ import org.json.JSONObject;
import org.lineageos.updater.R; import org.lineageos.updater.R;
import org.lineageos.updater.UpdatesDbHelper; import org.lineageos.updater.UpdatesDbHelper;
import org.lineageos.updater.controller.UpdaterService; import org.lineageos.updater.controller.UpdaterService;
import org.lineageos.updater.model.UpdateBaseInfo;
import org.lineageos.updater.model.Update; import org.lineageos.updater.model.Update;
import org.lineageos.updater.model.UpdateBaseInfo;
import org.lineageos.updater.model.UpdateInfo; import org.lineageos.updater.model.UpdateInfo;
import java.io.BufferedReader; import java.io.BufferedReader;

View File

@@ -1,12 +1,14 @@
package org.lineageos.updater.ui; package org.lineageos.updater.ui;
import android.content.Context; import android.content.Context;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CoordinatorLayout;
import android.support.v7.widget.RecyclerView;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.view.View; import android.view.View;
import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.appbar.AppBarLayout;
public final class FlingBehavior extends AppBarLayout.Behavior { public final class FlingBehavior extends AppBarLayout.Behavior {
private static final int TOP_CHILD_FLING_THRESHOLD = 3; private static final int TOP_CHILD_FLING_THRESHOLD = 3;
private boolean isPositive; private boolean isPositive;