From cafdba000f8b71bafbe66b911b4f9b777175f473 Mon Sep 17 00:00:00 2001 From: zzzz0317 Date: Wed, 29 Sep 2021 23:37:59 +0800 Subject: [PATCH] update dependencies and build tools --- app/build.gradle | 34 +++++++++++-------- .../wechathk/ExampleInstrumentedTest.java | 4 +-- app/src/main/AndroidManifest.xml | 2 +- app/src/main/assets/xposed_init | 2 +- .../main/java/org/gallonyin/weworkhk/Hook.kt | 33 ++++++++++++++++++ .../java/org/gallonyin/weworkhk/Main.java | 4 ++- .../org/gallonyin/weworkhk/MainActivity.java | 4 +-- .../weworkhk/TencentMapActivity.java | 2 +- build.gradle | 10 ++++-- gradle/wrapper/gradle-wrapper.properties | 6 ++-- imagepicker/build.gradle | 27 +++++++++------ .../imagepicker/BasePhotoPreviewActivity.java | 4 +-- .../imagepicker/util/FileProviderUtil.java | 6 ++-- .../main/res/layout/activity_photopreview.xml | 2 +- 14 files changed, 94 insertions(+), 46 deletions(-) create mode 100644 app/src/main/java/org/gallonyin/weworkhk/Hook.kt diff --git a/app/build.gradle b/app/build.gradle index 81ca77c..34935da 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,14 +1,15 @@ apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' android { - compileSdkVersion 26 + compileSdkVersion 29 defaultConfig { applicationId "org.gallonyin.weworkhk" - minSdkVersion 15 - targetSdkVersion 22 - versionCode 2 - versionName "1.1" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + minSdkVersion 26 + targetSdkVersion 29 + versionCode 3 + versionName "1.2" + testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' } buildTypes { release { @@ -20,15 +21,20 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:26.0.0-beta1' - implementation 'com.android.support.constraint:constraint-layout:1.0.2' + implementation 'androidx.appcompat:appcompat:1.3.1' + implementation 'androidx.constraintlayout:constraintlayout:2.1.1' // implementation 'com.zzti.fengyongge:imagepicker:1.3.0' implementation project(':imagepicker') - testImplementation 'junit:junit:4.12' - androidTestImplementation 'com.android.support.test:runner:0.5' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2' - compileOnly 'de.robv.android.xposed:api:53' - compileOnly 'de.robv.android.xposed:api:53:sources' - compile 'com.squareup.okhttp3:logging-interceptor:3.4.1' + testImplementation 'junit:junit:4.13.2' + androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' + compileOnly 'de.robv.android.xposed:api:82' + compileOnly 'de.robv.android.xposed:api:82:sources' + implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1' implementation files('libs/TencentMapSDK_Raster_v_1.2.8.1.c02ec64.jar') + implementation "androidx.core:core-ktx:1.6.0" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" +} +repositories { + mavenCentral() } diff --git a/app/src/androidTest/java/org/example/gallon2/wechathk/ExampleInstrumentedTest.java b/app/src/androidTest/java/org/example/gallon2/wechathk/ExampleInstrumentedTest.java index 9788cff..7a62f80 100644 --- a/app/src/androidTest/java/org/example/gallon2/wechathk/ExampleInstrumentedTest.java +++ b/app/src/androidTest/java/org/example/gallon2/wechathk/ExampleInstrumentedTest.java @@ -1,8 +1,8 @@ package org.example.gallon2.weworkhk; import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 21198f3..c19987b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -57,7 +57,7 @@ diff --git a/app/src/main/assets/xposed_init b/app/src/main/assets/xposed_init index 6ccece3..ae08698 100644 --- a/app/src/main/assets/xposed_init +++ b/app/src/main/assets/xposed_init @@ -1 +1 @@ -org.gallonyin.weworkhk.Main \ No newline at end of file +org.gallonyin.weworkhk.Hook \ No newline at end of file diff --git a/app/src/main/java/org/gallonyin/weworkhk/Hook.kt b/app/src/main/java/org/gallonyin/weworkhk/Hook.kt new file mode 100644 index 0000000..b3b6cf9 --- /dev/null +++ b/app/src/main/java/org/gallonyin/weworkhk/Hook.kt @@ -0,0 +1,33 @@ +package org.gallonyin.weworkhk + +import android.util.Log +import de.robv.android.xposed.IXposedHookLoadPackage +import de.robv.android.xposed.XC_MethodHook +import de.robv.android.xposed.XC_MethodHook.MethodHookParam +import de.robv.android.xposed.XposedBridge +import de.robv.android.xposed.XposedHelpers +import de.robv.android.xposed.callbacks.XC_LoadPackage + +class Hook : IXposedHookLoadPackage { + override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam?) { + Log.d("Main", "handleLoadPackage") + XposedBridge.log("handleLoadPackage: " + lpparam!!.packageName + " " + lpparam.processName) + if (lpparam.packageName == "com.tencent.wework") { + Log.d("Main", "wework") + WeWork().start(lpparam.classLoader) + } + if (lpparam.packageName == "org.gallonyin.weworkhk") { + Log.d("Main", "weworkhk") + XposedHelpers.findAndHookMethod( + "org.gallonyin.weworkhk.MainActivity", + lpparam.classLoader, + "confirm", + object : XC_MethodHook() { + @Throws(Throwable::class) + override fun afterHookedMethod(param: MethodHookParam) { + param.result = true + } + }) + } + } +} \ No newline at end of file diff --git a/app/src/main/java/org/gallonyin/weworkhk/Main.java b/app/src/main/java/org/gallonyin/weworkhk/Main.java index d27ab04..7c38e5a 100644 --- a/app/src/main/java/org/gallonyin/weworkhk/Main.java +++ b/app/src/main/java/org/gallonyin/weworkhk/Main.java @@ -18,8 +18,9 @@ public class Main implements IXposedHookLoadPackage { @Override - public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable { + public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) { try { + Log.d("Main", "handleLoadPackage"); XposedBridge.log("handleLoadPackage: " + lpparam.packageName + " " + lpparam.processName); if (lpparam.packageName.equals("com.tencent.wework")) { @@ -36,6 +37,7 @@ protected void afterHookedMethod(MethodHookParam param) throws Throwable { }); } } catch (Exception e) { + Log.w("Main", "handleLoadPackage catch Exception"); e.printStackTrace(); StringWriter sw = new StringWriter(); e.printStackTrace(new PrintWriter(sw)); diff --git a/app/src/main/java/org/gallonyin/weworkhk/MainActivity.java b/app/src/main/java/org/gallonyin/weworkhk/MainActivity.java index 43c8124..12bd4f1 100644 --- a/app/src/main/java/org/gallonyin/weworkhk/MainActivity.java +++ b/app/src/main/java/org/gallonyin/weworkhk/MainActivity.java @@ -12,8 +12,8 @@ import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.IBinder; -import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatActivity; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.CheckBox; diff --git a/app/src/main/java/org/gallonyin/weworkhk/TencentMapActivity.java b/app/src/main/java/org/gallonyin/weworkhk/TencentMapActivity.java index 05e4335..bffea90 100644 --- a/app/src/main/java/org/gallonyin/weworkhk/TencentMapActivity.java +++ b/app/src/main/java/org/gallonyin/weworkhk/TencentMapActivity.java @@ -4,7 +4,7 @@ import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatActivity; import android.widget.Toast; import com.tencent.mapsdk.raster.model.BitmapDescriptorFactory; diff --git a/build.gradle b/build.gradle index e6b32bc..5c1d341 100644 --- a/build.gradle +++ b/build.gradle @@ -1,14 +1,17 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - + ext.kotlin_version = '1.5.20' + repositories { google() + mavenCentral() jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.0.1' - + classpath 'com.android.tools.build:gradle:7.0.2' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files @@ -18,6 +21,7 @@ buildscript { allprojects { repositories { google() + mavenCentral() jcenter() } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 477e789..eb6dfec 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sat Jun 02 15:45:31 CST 2018 +#Wed Sep 29 21:01:35 CST 2021 distributionBase=GRADLE_USER_HOME +distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip +zipStoreBase=GRADLE_USER_HOME diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index 356bbc3..54853ef 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -1,14 +1,14 @@ apply plugin: 'com.android.library' +apply plugin: 'kotlin-android' android { - compileSdkVersion 23 - buildToolsVersion '25.0.0' + compileSdkVersion 29 defaultConfig { - minSdkVersion 15 - targetSdkVersion 22 - versionCode 2 - versionName "1.1" + minSdkVersion 26 + targetSdkVersion 29 + versionCode 3 + versionName "1.2" } buildTypes { release { @@ -19,11 +19,16 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - testCompile 'junit:junit:4.12' - compile 'com.android.support:appcompat-v7:23.4.0' - compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5' - compile 'pub.devrel:easypermissions:0.2.1' + implementation fileTree(dir: 'libs', include: ['*.jar']) + testImplementation 'junit:junit:4.13.2' + implementation 'androidx.appcompat:appcompat:1.3.1' + implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5' + implementation 'pub.devrel:easypermissions:0.2.1' + implementation "androidx.core:core-ktx:1.6.0" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" } +repositories { + mavenCentral() +} diff --git a/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/BasePhotoPreviewActivity.java b/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/BasePhotoPreviewActivity.java index 9743843..3af7945 100644 --- a/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/BasePhotoPreviewActivity.java +++ b/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/BasePhotoPreviewActivity.java @@ -2,8 +2,8 @@ import android.app.Activity; import android.os.Bundle; -import android.support.v4.view.PagerAdapter; -import android.support.v4.view.ViewPager; +import androidx.viewpager.widget.PagerAdapter; +import androidx.viewpager.widget.ViewPager; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; diff --git a/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/util/FileProviderUtil.java b/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/util/FileProviderUtil.java index fdf4cd9..c2a7368 100644 --- a/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/util/FileProviderUtil.java +++ b/imagepicker/src/main/java/com/zzti/fengyongge/imagepicker/util/FileProviderUtil.java @@ -1,12 +1,10 @@ package com.zzti.fengyongge.imagepicker.util; -import android.content.ContentValues; import android.content.Context; -import android.database.Cursor; import android.net.Uri; import android.os.Build; -import android.provider.MediaStore; -import android.support.v4.content.FileProvider; + +import androidx.core.content.FileProvider; import java.io.File; diff --git a/imagepicker/src/main/res/layout/activity_photopreview.xml b/imagepicker/src/main/res/layout/activity_photopreview.xml index 11aaf5c..f983403 100644 --- a/imagepicker/src/main/res/layout/activity_photopreview.xml +++ b/imagepicker/src/main/res/layout/activity_photopreview.xml @@ -4,7 +4,7 @@ android:layout_height="match_parent" android:background="@android:color/black" > -