From e7511d0041f2efd1969410eed7a2fcd6f3d5c12f Mon Sep 17 00:00:00 2001 From: Gabriele M Date: Sun, 2 Jul 2017 17:46:36 +0200 Subject: [PATCH] Project init --- Android.mk | 37 ++ AndroidManifest.xml | 32 ++ res/drawable-hdpi/ic_launcher.png | Bin 0 -> 1010 bytes res/drawable-mdpi/ic_launcher.png | Bin 0 -> 670 bytes res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 1193 bytes res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 1618 bytes res/drawable-xxxhdpi/ic_launcher.png | Bin 0 -> 2190 bytes res/drawable/ic_system_update.xml | 11 + res/layout/activity_updates.xml | 13 + res/layout/fragment_updates_list.xml | 14 + res/layout/update_item_view.xml | 31 ++ res/values/config.xml | 4 + res/values/strings.xml | 38 ++ src/org/lineageos/updater/DownloadClient.java | 287 ++++++++++++++ .../lineageos/updater/DownloadController.java | 357 ++++++++++++++++++ .../updater/DownloadControllerInt.java | 42 +++ .../lineageos/updater/DownloadService.java | 266 +++++++++++++ src/org/lineageos/updater/Update.java | 82 ++++ src/org/lineageos/updater/UpdateDownload.java | 76 ++++ src/org/lineageos/updater/UpdateStatus.java | 37 ++ .../updater/UpdaterBroadcastReceiver.java | 61 +++ .../lineageos/updater/UpdatesActivity.java | 190 ++++++++++ .../lineageos/updater/UpdatesDbHelper.java | 207 ++++++++++ .../lineageos/updater/UpdatesListAdapter.java | 192 ++++++++++ src/org/lineageos/updater/misc/Utils.java | 131 +++++++ 25 files changed, 2108 insertions(+) create mode 100644 Android.mk create mode 100644 AndroidManifest.xml create mode 100644 res/drawable-hdpi/ic_launcher.png create mode 100644 res/drawable-mdpi/ic_launcher.png create mode 100644 res/drawable-xhdpi/ic_launcher.png create mode 100644 res/drawable-xxhdpi/ic_launcher.png create mode 100644 res/drawable-xxxhdpi/ic_launcher.png create mode 100644 res/drawable/ic_system_update.xml create mode 100644 res/layout/activity_updates.xml create mode 100644 res/layout/fragment_updates_list.xml create mode 100644 res/layout/update_item_view.xml create mode 100644 res/values/config.xml create mode 100644 res/values/strings.xml create mode 100644 src/org/lineageos/updater/DownloadClient.java create mode 100644 src/org/lineageos/updater/DownloadController.java create mode 100644 src/org/lineageos/updater/DownloadControllerInt.java create mode 100644 src/org/lineageos/updater/DownloadService.java create mode 100644 src/org/lineageos/updater/Update.java create mode 100644 src/org/lineageos/updater/UpdateDownload.java create mode 100644 src/org/lineageos/updater/UpdateStatus.java create mode 100644 src/org/lineageos/updater/UpdaterBroadcastReceiver.java create mode 100644 src/org/lineageos/updater/UpdatesActivity.java create mode 100644 src/org/lineageos/updater/UpdatesDbHelper.java create mode 100644 src/org/lineageos/updater/UpdatesListAdapter.java create mode 100644 src/org/lineageos/updater/misc/Utils.java diff --git a/Android.mk b/Android.mk new file mode 100644 index 00000000..aad3dcfb --- /dev/null +++ b/Android.mk @@ -0,0 +1,37 @@ +LOCAL_PATH:= $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE_TAGS := optional + +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_STATIC_JAVA_LIBRARIES := \ + android-support-design \ + android-support-v4 \ + android-support-v7-appcompat \ + android-support-v7-cardview \ + android-support-v7-preference \ + android-support-v7-recyclerview \ + okhttp + +LOCAL_RESOURCE_DIR := \ + $(TOP)/frameworks/support/design/res \ + $(TOP)/frameworks/support/v7/appcompat/res \ + $(TOP)/frameworks/support/v7/cardview/res \ + $(TOP)/frameworks/support/v7/preference/res \ + $(TOP)/frameworks/support/v7/recyclerview/res \ + $(LOCAL_PATH)/res + +LOCAL_AAPT_FLAGS := \ + --auto-add-overlay \ + --extra-packages android.support.design \ + --extra-packages android.support.v7.appcompat \ + --extra-packages android.support.v7.cardview \ + --extra-packages android.support.v7.preference \ + --extra-packages android.support.v7.recyclerview + +LOCAL_PACKAGE_NAME := Updater +LOCAL_PRIVILEGED_MODULE := true + +include $(BUILD_PACKAGE) diff --git a/AndroidManifest.xml b/AndroidManifest.xml new file mode 100644 index 00000000..f441156d --- /dev/null +++ b/AndroidManifest.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/res/drawable-hdpi/ic_launcher.png b/res/drawable-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..030e540768a2caed462916f6e326f940e48f6c26 GIT binary patch literal 1010 zcmVxTHeSsc)fxJUJ^-|)|gGi9-QStzm6hWj14Vtt~vLDW5 zciSbK-E1Z^yEEzhVY`83zkZ#M|4fDe=+L14PQ z^LzPV9<-YCrI3v;g+(sWT1#?s=*G1Q<9cVak7j^>fm zCP|1R&tMh#k>tT)1!{^%5{A=E0%!-EpPCVblo5r~b?;p)ko)^PWw9j*izqo|bNfaI gbm-6_Q~VcT0IFs7iTcdBRsaA107*qoM6N<$f~@G$Z~y=R literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/ic_launcher.png b/res/drawable-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..b71eea187be9bdebc6e6ab9a6dff26bfaad6a14c GIT binary patch literal 670 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 St(=w>tEc+`x9UBiIe!8E-RRB$ literal 0 HcmV?d00001 diff --git a/res/drawable/ic_system_update.xml b/res/drawable/ic_system_update.xml new file mode 100644 index 00000000..321b0c8d --- /dev/null +++ b/res/drawable/ic_system_update.xml @@ -0,0 +1,11 @@ + + + + + diff --git a/res/layout/activity_updates.xml b/res/layout/activity_updates.xml new file mode 100644 index 00000000..23e0f0d6 --- /dev/null +++ b/res/layout/activity_updates.xml @@ -0,0 +1,13 @@ + + + + + diff --git a/res/layout/fragment_updates_list.xml b/res/layout/fragment_updates_list.xml new file mode 100644 index 00000000..3641b617 --- /dev/null +++ b/res/layout/fragment_updates_list.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/res/layout/update_item_view.xml b/res/layout/update_item_view.xml new file mode 100644 index 00000000..b6de496d --- /dev/null +++ b/res/layout/update_item_view.xml @@ -0,0 +1,31 @@ + + + +