From 93b0e35af7c2067cae76c31c7a3f0e259b5d6511 Mon Sep 17 00:00:00 2001 From: fanhuitong <981964879@qq.com> Date: Thu, 3 Jun 2021 10:29:05 +0800 Subject: [PATCH] =?UTF-8?q?version:1.3.5=20fix:=E5=A2=9E=E5=8A=A0=E5=B1=95?= =?UTF-8?q?=E9=94=90=E5=B9=B3=E5=8F=B0=E7=AD=BE=E5=90=8D=20add:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 87 +++- .../com/info/sn/ExampleInstrumentedTest.java | 27 ++ app/src/keys/zhanxun.keystore | Bin 0 -> 2617 bytes app/src/main/AndroidManifest.xml | 3 +- .../com/info/sn/activity/MainActivity.java | 8 +- .../java/com/info/sn/base/MyApplication.java | 68 ++- .../java/com/info/sn/jpush/MyReceiver.java | 2 + .../com/info/sn/network/HTTPInterface.java | 17 +- .../java/com/info/sn/network/UrlAddress.java | 4 +- .../info/sn/network/api/NewestAppUpdate.java | 3 +- .../info/sn/receiver/APKinstallReceiver.java | 6 +- .../com/info/sn/service/InitJpushServer.java | 3 +- .../info/sn/service/ScreenLockService.java | 70 +++ .../main/java/com/info/sn/utils/JGYUtils.java | 455 ++++++++++++++++++ .../main/java/com/info/sn/utils/LogUtils.java | 2 +- .../java/com/info/sn/utils/ToastUtil.java | 2 +- .../main/java/com/info/sn/utils/URLUtils.java | 242 ++++++++++ .../main/java/com/info/sn/utils/Utils.java | 175 ++++--- app/src/main/res/drawable-hdpi/logo.png | Bin 24501 -> 107084 bytes .../main/res/layout-land/activity_main.xml | 22 +- .../main/res/layout-port/activity_main.xml | 20 +- app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 6305 -> 8461 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 6305 -> 8461 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 6305 -> 8461 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 6305 -> 8461 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 6305 -> 8461 bytes app/src/main/res/values/colors.xml | 1 + .../java/com/info/sn/ExampleUnitTest.java | 17 + gradle.properties | 20 + gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 172 +++++++ gradlew.bat | 84 ++++ 32 files changed, 1382 insertions(+), 130 deletions(-) create mode 100644 app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java create mode 100644 app/src/keys/zhanxun.keystore create mode 100644 app/src/main/java/com/info/sn/service/ScreenLockService.java create mode 100644 app/src/main/java/com/info/sn/utils/JGYUtils.java create mode 100644 app/src/main/java/com/info/sn/utils/URLUtils.java create mode 100644 app/src/test/java/com/info/sn/ExampleUnitTest.java create mode 100644 gradle.properties create mode 100644 gradlew create mode 100644 gradlew.bat diff --git a/app/build.gradle b/app/build.gradle index f4ea6f4..7bebe5e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,13 +10,13 @@ def releaseTime() { android { compileSdkVersion 28 - buildToolsVersion "29.0.2" + buildToolsVersion "29.0.3" defaultConfig { applicationId "com.info.sn" minSdkVersion 23 targetSdkVersion 28 - versionCode 31 - versionName "1.3.1" + versionCode 35 + versionName "1.3.5" multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" ndk { @@ -31,6 +31,12 @@ android { ] } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + buildTypes { release { minifyEnabled false @@ -42,6 +48,14 @@ android { } //签名 signingConfigs { + zhanRui { + storeFile file("src/keys/zhanxun.keystore") + storePassword "123456" + keyAlias "zhanxun" + keyPassword "123456" + v1SigningEnabled true + v2SigningEnabled true + } debug { storeFile file("src/keys/xueshibaoos.jks") storePassword "123456" @@ -59,9 +73,22 @@ android { } buildTypes { + zhanRuiRelease.initWith(release) + zhanRuiRelease { + buildConfigField "String", "platform", '"ZhanRui"' + signingConfig signingConfigs.zhanRui + } + + zhanRuiDebug.initWith(debug) + zhanRuiDebug { + versionNameSuffix "-debug" + buildConfigField "String", "platform", '"ZhanRui"' + debuggable true + signingConfig signingConfigs.zhanRui + } + debug { - // 显示Log - buildConfigField "boolean", "LOG_DEBUG", "true" + buildConfigField "String", "platform", '"MTK"' versionNameSuffix "-debug" minifyEnabled false //Zipalign优化 @@ -70,15 +97,15 @@ android { applicationVariants.all { variant -> variant.outputs.each { output -> if (outputFile != null) { - def fileName = "${appName()}-V${defaultConfig.versionName}-${releaseTime()}.apk" + def fileName = "${appName()}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk" output.outputFileName = fileName } } } } + release { - // 不显示Log - buildConfigField "boolean", "LOG_DEBUG", "false" + buildConfigField "String", "platform", '"MTK"' //混淆 minifyEnabled false //Zipalign优化 @@ -92,9 +119,8 @@ android { variant.outputs.each { output -> def outputFile = "" if (outputFile != null) { - def fileName = "${appName()}-${defaultConfig.versionCode}-V${defaultConfig.versionName}-${releaseTime()}.apk" + def fileName = "${appName()}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk" output.outputFileName = new File(outputFile, fileName) - } } } @@ -127,25 +153,19 @@ dependencies { implementation 'com.hjq:xxpermissions:6.0' //okhttp implementation 'com.squareup.okhttp3:okhttp:4.6.0' - //RxJava和Retrofit - implementation 'io.reactivex.rxjava2:rxjava:2.2.5' - implementation 'io.reactivex.rxjava2:rxandroid:2.1.0' - implementation 'com.squareup.retrofit2:retrofit:2.3.0' - implementation 'com.squareup.retrofit2:converter-gson:2.3.0' - implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0' - - //http框架 - //implementation 'com.lzy.net:okgo:3.0.4' - //implementation 'com.lzy.net:okrx:0.1.2' - //implementation 'com.lzy.net:okserver:2.0.5' - + //Retrofit + implementation 'com.squareup.retrofit2:retrofit:2.9.0' + implementation 'com.squareup.retrofit2:converter-gson:2.9.0' + implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0' + //RxJava + implementation 'io.reactivex.rxjava2:rxjava:2.2.8' + implementation 'io.reactivex.rxjava2:rxandroid:2.1.1' implementation 'com.google.code.gson:gson:2.8.6' implementation 'com.google.zxing:core:3.3.0' implementation 'com.alibaba:fastjson:1.2.70' - //implementation 'com.blankj:utilcode:1.26.0' implementation 'com.arialyy.aria:core:3.8.15' annotationProcessor 'com.arialyy.aria:compiler:3.8.15' @@ -158,3 +178,24 @@ dependencies { //https://github.com/JessYanCoding/AndroidAutoSize implementation 'me.jessyan:autosize:1.2.1' } + +preBuild { + doLast { + def imlFile = file(project.name + ".iml") + println 'Change ' + project.name + '.iml order' + try { + def parsedXml = (new XmlParser()).parse(imlFile) + def jdkNode = parsedXml.component[1].orderEntry.find { it.'@type' == 'jdk' } + parsedXml.component[1].remove(jdkNode) + def sdkString = "Android API " + android.compileSdkVersion.substring("android-".length()) + " Platform" + println 'what' + sdkString + new Node(parsedXml.component[1], 'orderEntry', ['type': 'jdk', 'jdkName': sdkString, 'jdkType': 'Android SDK']) + groovy.xml.XmlUtil.serialize(parsedXml, new FileOutputStream(imlFile)) + } catch (FileNotFoundException e) { + // nop, iml not found + println "no iml found" + } + } + //https://www.pianshen.com/article/93481144911/ + //使用系统编译后的framework.jar +} diff --git a/app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java b/app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java new file mode 100644 index 0000000..f64e2ec --- /dev/null +++ b/app/src/androidTest/java/com/info/sn/ExampleInstrumentedTest.java @@ -0,0 +1,27 @@ +package com.info.sn; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + + assertEquals("com.info.sn", appContext.getPackageName()); + } +} diff --git a/app/src/keys/zhanxun.keystore b/app/src/keys/zhanxun.keystore new file mode 100644 index 0000000000000000000000000000000000000000..7c46fbc6f1cfbc0ac9370820ac7ba95fc2e165a9 GIT binary patch literal 2617 zcmY+EWmFUl7KUeF7;@+m9EO%=f=&fR1w={#0m)$)hn5bJAq1prLAp!25tVL`29**- zq$P)D**&}8cfKF@+;g7yz4zw>$5TiW0g2&w@@+7=P{@N20t843%)*l|fbitsukkb- zPlEeLL}CKMlNerO{p-;NQ~vLYiULTKg$JF%@gM?R5KQrZeEpmq#K@8_L~u{ew2*^E zaEyC+r|7VBY!eX!IladcwY0w|wjq*YIsPi@Qv z^3)_`OTk6E|9-DBF$M^0^t9K~awC@d_=?9U0jK@0sP=cvIB$Zxx5+-tjbgo@_(Dt2W*TIOF`(i~J6E0r8(nAKZgR5@f; zB6nE9n|jRl*=XFzDiEi5ihiwWet)&=_(+bVRO+so5 z*~M6g1=Fc-lwrB;*BUhWgT-SI#p^z`mfCkH|K#UR%>3c+|CX-fKHt@jRK69&#IM`G z|MWDn6_uXsR@5F&I<%*qW4h^7PHgzo;@RC~U!dkp&Mn}c0J4N;IH?=|1~#ehphq?3 zBl5;H8rpoAu>Ly2t2SPC%*Ec30+D~QPoJ01wtP4h@8N4G9EWv5h3w1bc zaKdwV-oqh8@@&I-m4Dpl80LmVEwL|8ORGX#z_c*YS;>`)2iq$er+^ zUi-8X>;JF1^9fVVv3cHA$ zW6FyxC$B#3?d)dgY6d%oo%m>dW&6poeBP_%iKN(8IodP7QhKnmi|^v;OM}2u?&pgd zOu2%0dD3*{hX2%*e<0rp`_%B~o$H|LH-}`_Vf`7&EpOSNmutsEF1-ldZqj=l;e9Xn z^@G)DoU)K;ReLIxM0@3S+@wn7kHxvC<~xr&C3lFJ-W#vw`nJY>lo9h$Q2c1r!f4GYh?8=f_2pFGnU+bnO!|z~0&>ZAog5gDlT2 z*SqA-8%sj8@A8g_=`qcbinm`naik1q@K z^+YH25y-BUB}vq=n#2{U_3b+jEm!&3>&~=|mBNra^BL=}?Cx6@&dWl(1D|fI_Qi!%rdo%STeI`Xff34p=d7AY;PW=XEdHfsKB9r zsgj%#LCZl6@CMidEC3DwPkOwG7?DuVyHThh7{rW?*G`Zktl#o7YG@!eNIH_DdIBrdzGJe{Cu<|lk^DSL%v zc~+pPUO?Hjy(( zc9Pw(63rclW`t`Ohokz8@}c!9RpO4wHrz?K*9f$?k_DD-o0Kny&oLk&vlCCnCeI$n zxoM^{=QY`rLm{(~1(+pTmuVSVKQ9GS$6CJt9^9*B7zy1H zL+)MrL0VaLEO!ezCdnL}_tB^Un0%fj9VLE-mS;<9CS}aj$}DE6j7y$=0^8|-PX~Zg z9kJ#3BS>t6f~$wp`d(e4RrGmm4`NSmV$U{4SRcjH>CzizMxM%emI@3NYX-fhlZ1ZosB|U8Ea{g*qWOq4mrx9yDxIx`!I~xOVe3LHm z3AM?89%Da4Ty5hr@wI8lRW-bR-Nj#U;XFG^fU=rT-CRAjw#@(2w8w60=m3v{V3`B| z$K~qHiY5{XOn7xs?YtMIx%gX6mnlOhRqMeSOxdg6oKRlOtuXtbO zcTFb~&dgy#$AYTBk5_yE+RU(}*BAzuXQD9O+3oFmd?KdD+j&~rOzZP>ZQGXB4YOUW zSgPxxn#bHp9l^?KMS{J!qwc9s#j7sX!e-BgnR0<3n}yDr1LQ(L+cqC1fFQ-4*yK_@ zS%#F@8v8spI9P4ssyZC}4h!XUt#ahi$p?=Zt?CLuoWEF+u75lb7ntOh?SBqef^)&i z!6d@e#6)Z)01zV?F4h*(A#~yTDOmv)G3Pp{#6}BZ)XjV{?6>>aOv!OTqJBJnOQV&3 KiHH~&lJ##+rq5Ua literal 0 HcmV?d00001 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ea08459..0f8ed25 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -7,6 +7,7 @@ + @@ -255,7 +256,7 @@ - + factoryClass = Class.forName("android.webkit.WebViewFactory"); + Field field = factoryClass.getDeclaredField("sProviderInstance"); + field.setAccessible(true); + Object sProviderInstance = field.get(null); + if (sProviderInstance != null) { + Log.i(TAG, "sProviderInstance isn't null"); + return; + } + + Method getProviderClassMethod; + if (sdkInt > 22) { + getProviderClassMethod = factoryClass.getDeclaredMethod("getProviderClass"); + } else if (sdkInt == 22) { + getProviderClassMethod = factoryClass.getDeclaredMethod("getFactoryClass"); + } else { + Log.i(TAG, "Don't need to Hook WebView"); + return; + } + getProviderClassMethod.setAccessible(true); + Class factoryProviderClass = (Class) getProviderClassMethod.invoke(factoryClass); + Class delegateClass = Class.forName("android.webkit.WebViewDelegate"); + Constructor delegateConstructor = delegateClass.getDeclaredConstructor(); + delegateConstructor.setAccessible(true); + if (sdkInt < 26) {//低于Android O版本 + Constructor providerConstructor = factoryProviderClass.getConstructor(delegateClass); + if (providerConstructor != null) { + providerConstructor.setAccessible(true); + sProviderInstance = providerConstructor.newInstance(delegateConstructor.newInstance()); + } + } else { + Field chromiumMethodName = factoryClass.getDeclaredField("CHROMIUM_WEBVIEW_FACTORY_METHOD"); + chromiumMethodName.setAccessible(true); + String chromiumMethodNameStr = (String) chromiumMethodName.get(null); + if (chromiumMethodNameStr == null) { + chromiumMethodNameStr = "create"; + } + Method staticFactory = factoryProviderClass.getMethod(chromiumMethodNameStr, delegateClass); + if (staticFactory != null) { + sProviderInstance = staticFactory.invoke(null, delegateConstructor.newInstance()); + } + } + + if (sProviderInstance != null) { + field.set("sProviderInstance", sProviderInstance); + Log.i(TAG, "Hook success!"); + } else { + Log.i(TAG, "Hook failed!"); + } + } catch (Throwable e) { + Log.w(TAG, e); + } } @@ -184,10 +249,11 @@ public class MyApplication extends Application { filter.addDataScheme("package"); registerReceiver(apKinstallReceiver, filter); } + private BootReceiver bootReceiver; private void registBootReceive() { - if (null == bootReceiver){ + if (null == bootReceiver) { bootReceiver = new BootReceiver(); IntentFilter filter = new IntentFilter(); filter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); diff --git a/app/src/main/java/com/info/sn/jpush/MyReceiver.java b/app/src/main/java/com/info/sn/jpush/MyReceiver.java index 41d8c21..8b233ff 100644 --- a/app/src/main/java/com/info/sn/jpush/MyReceiver.java +++ b/app/src/main/java/com/info/sn/jpush/MyReceiver.java @@ -228,6 +228,7 @@ public class MyReceiver extends BroadcastReceiver { String type = bundle.getString(JPushInterface.EXTRA_CONTENT_TYPE); String extras = bundle.getString(JPushInterface.EXTRA_EXTRA); // HTTPInterface.checkDevicesInfo(context); + ToastUtil.show(extras); switch (message) { case JIGUANG_GET_DRIVELINE: @@ -256,6 +257,7 @@ public class MyReceiver extends BroadcastReceiver { setAppLockedstate(context, extras); break; case JIGUANG_FORCE_INSTALLAPK: + HTTPInterface.getAllappPackage(context); intallApk(context, extras); break; case JIGUANG_FORCE_UNINSTALLAPK: diff --git a/app/src/main/java/com/info/sn/network/HTTPInterface.java b/app/src/main/java/com/info/sn/network/HTTPInterface.java index cdb311f..c93a6cc 100644 --- a/app/src/main/java/com/info/sn/network/HTTPInterface.java +++ b/app/src/main/java/com/info/sn/network/HTTPInterface.java @@ -32,8 +32,10 @@ import com.info.sn.network.api.UpdateAdminSn; import com.info.sn.service.InitJpushServer; import com.info.sn.utils.ApkUtils; import com.info.sn.utils.FileUtils; +import com.info.sn.utils.JGYUtils; import com.info.sn.utils.SPUtils; import com.info.sn.utils.TimeUtils; +import com.info.sn.utils.URLUtils; import com.info.sn.utils.Utils; import java.util.List; @@ -100,6 +102,7 @@ public class HTTPInterface { int code = baseResponse.code; if (code == 200) { JSONObject jsonObject = (JSONObject) JSON.toJSON(baseResponse.data); + //白名单 List white = JSON.parseArray(jsonObject.getString("browser"), BrowserBean.class); if (null != white && white.size() != 0) { String s = ""; @@ -111,6 +114,7 @@ public class HTTPInterface { } else { Settings.System.putString(context.getContentResolver(), "DeselectBrowserArray", " "); } + //黑名单 List black = JSON.parseArray(jsonObject.getString("browser_black"), BrowserBean.class); if (null != black && black.size() != 0) { String s = ""; @@ -133,7 +137,8 @@ public class HTTPInterface { @Override public void onComplete() { - + Log.e("setBrowser", "onComplete: "); + new URLUtils(context).setBrowserList(); } }); } @@ -161,6 +166,7 @@ public class HTTPInterface { } JsonObject label = jsonObject.getAsJsonArray("label").get(0).getAsJsonObject(); String home_page = label.get("home_page").getAsString(); + Settings.System.putString(context.getContentResolver(), "homepagURL", home_page); String label_page = label.get("label_page").getAsString(); // Log.e("getBrowserLabel", "onNext: " + home_page); //主页 @@ -503,9 +509,10 @@ public class HTTPInterface { jsonObject.put("address", address); jsonObject.put("longitude", longitude); jsonObject.put("latitude", latitude); -// String a = jsonObject.toString(); -// String b = Utils.getMachine(context); -// String c = Utils.getHardware(context); + String a = jsonObject.toString(); + String b = Utils.getMachine(context); + String c = Utils.getHardware(context); + String d = Utils.getSerial(); UpdateAdminSn updateAdminSn = NetWorkManager.getUpdateAdminSnControl(); updateAdminSn.sendAdminSn(Utils.getSerial(), jsonObject.toJSONString(), @@ -665,7 +672,7 @@ public class HTTPInterface { public static void checkUpdate(final Context context, String packageName, String versionCode) { NewestAppUpdate newestAppUpdate = NetWorkManager.getNewestAppUpdateControl(); - newestAppUpdate.getAppUpdate(packageName, versionCode) + newestAppUpdate.getAppUpdate(packageName, versionCode, JGYUtils.getInstance().checkAppPlatform()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Observer>() { diff --git a/app/src/main/java/com/info/sn/network/UrlAddress.java b/app/src/main/java/com/info/sn/network/UrlAddress.java index 223f1ec..f1a2f8f 100644 --- a/app/src/main/java/com/info/sn/network/UrlAddress.java +++ b/app/src/main/java/com/info/sn/network/UrlAddress.java @@ -38,7 +38,7 @@ public class UrlAddress { public final static String UPLOAD_SCREEN_SNAPSHOT = ROOT_URL + "sn/uploadScreenshot"; //上传屏幕截图 public final static String GET_SCREEN_LOCK = ROOT_URL + "sn/getScreenshot"; - //上传屏幕截图 + //获取屏幕管控 public final static String GET_TIME_CONTROL = ROOT_URL + "sn/getTimeControl"; - //上传屏幕截图 + //获取时间管控 } diff --git a/app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java b/app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java index b5b691a..f770c32 100644 --- a/app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java +++ b/app/src/main/java/com/info/sn/network/api/NewestAppUpdate.java @@ -14,6 +14,7 @@ public interface NewestAppUpdate { @GET(UrlAddress.GET_NEWESTAPPUPDATE) Observable> getAppUpdate( @Query("packageName") String packageName, - @Query("versionCode") String versionCode + @Query("versionCode") String versionCode, + @Query("type") int type ); } diff --git a/app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java b/app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java index 02bb851..827dabc 100644 --- a/app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java +++ b/app/src/main/java/com/info/sn/receiver/APKinstallReceiver.java @@ -7,6 +7,7 @@ import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.os.Build; +import android.util.Log; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; @@ -27,6 +28,8 @@ import io.reactivex.schedulers.Schedulers; public class APKinstallReceiver extends BroadcastReceiver { + private String TAG = APKinstallReceiver.class.getSimpleName(); + @Override public void onReceive(final Context context, Intent intent) { // TODO: This method is called when the BroadcastReceiver is receiving @@ -43,7 +46,7 @@ public class APKinstallReceiver extends BroadcastReceiver { List list = pm.getInstalledPackages(0); List uploadInfos = new ArrayList<>(); for (PackageInfo info : list) { - if ((info.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 1){ + if ((info.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 1) { continue; } AppUploadInfo uploadInfo = new AppUploadInfo(); @@ -69,6 +72,7 @@ public class APKinstallReceiver extends BroadcastReceiver { @Override public void onNext(List appUploadInfos) { String json = JSONArray.toJSONString(appUploadInfos); + Log.e(TAG, "onNext: " + json); HTTPInterface.SendAppInstall(json); } diff --git a/app/src/main/java/com/info/sn/service/InitJpushServer.java b/app/src/main/java/com/info/sn/service/InitJpushServer.java index dd4da52..3e8dceb 100644 --- a/app/src/main/java/com/info/sn/service/InitJpushServer.java +++ b/app/src/main/java/com/info/sn/service/InitJpushServer.java @@ -32,6 +32,7 @@ import com.info.sn.utils.SPUtils; import com.info.sn.utils.TimeUtils; import com.info.sn.utils.Utils; +import cn.jpush.android.api.JPushInterface; import io.reactivex.Observer; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.Disposable; @@ -71,6 +72,7 @@ public class InitJpushServer extends Service { @Override public int onStartCommand(Intent intent, int flags, int startId) { + JPushInterface.init(this); // HTTPInterface.checkDevicesInfo(InitJpushServer.this); HTTPInterface.getAllappPackage(InitJpushServer.this); HTTPInterface.getForceInstall(InitJpushServer.this); @@ -203,7 +205,6 @@ public class InitJpushServer extends Service { layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT; layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT; //systemUiVisibility 关闭通知栏和导航栏 - layoutParams.systemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE diff --git a/app/src/main/java/com/info/sn/service/ScreenLockService.java b/app/src/main/java/com/info/sn/service/ScreenLockService.java new file mode 100644 index 0000000..14b3e53 --- /dev/null +++ b/app/src/main/java/com/info/sn/service/ScreenLockService.java @@ -0,0 +1,70 @@ +package com.info.sn.service; + +import android.app.Service; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.os.IBinder; +import android.util.Log; + +import com.info.sn.activity.ScreenLockActivity; + +public class ScreenLockService extends Service { + + + public ScreenLockService() { + } + + @Override + public IBinder onBind(Intent intent) { + // TODO: Return the communication channel to the service. +// throw new UnsupportedOperationException("Not yet implemented"); + return null; + } + + @Override + public void onCreate() { + super.onCreate(); + registerScreenLockReceiver(); + } + + @Override + public int onStartCommand(Intent intent, int flags, int startId) { + + return START_STICKY; + } + + @Override + public void onDestroy() { + super.onDestroy(); + if (null != screenLockReceiver) { + unregisterReceiver(screenLockReceiver); + } + } + + private ScreenLockReceiver screenLockReceiver; + + public void registerScreenLockReceiver() { + if (null == screenLockReceiver) { + screenLockReceiver = new ScreenLockReceiver(); + } + IntentFilter filter = new IntentFilter(); + filter.addAction(Intent.ACTION_SCREEN_OFF); + filter.addAction(Intent.ACTION_USER_PRESENT); + registerReceiver(screenLockReceiver, filter); + } + + public static class ScreenLockReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + String action = intent.getAction(); + Log.e("ScreenLockReceiver", "onReceive: "+action); + if (Intent.ACTION_SCREEN_OFF.equals(action)) { + Intent screenLock = new Intent(context, ScreenLockActivity.class); + screenLock.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); +// context.startActivity(screenLock); + } + } + } +} diff --git a/app/src/main/java/com/info/sn/utils/JGYUtils.java b/app/src/main/java/com/info/sn/utils/JGYUtils.java new file mode 100644 index 0000000..e57f044 --- /dev/null +++ b/app/src/main/java/com/info/sn/utils/JGYUtils.java @@ -0,0 +1,455 @@ +package com.info.sn.utils; + +import android.annotation.SuppressLint; +import android.app.ActivityManager; +import android.app.ActivityManagerNative; +import android.app.ActivityTaskManager; +import android.content.ComponentName; +import android.content.Context; +import android.content.ContextWrapper; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.content.pm.UserInfo; +import android.net.Uri; +import android.os.BatteryManager; +import android.os.Build; +import android.os.PowerManager; +import android.os.RemoteException; +import android.provider.Settings; +import android.text.TextUtils; +import android.util.Log; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.google.gson.JsonObject; +import com.info.sn.BuildConfig; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.lang.reflect.Constructor; +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.LinkedHashSet; +import java.util.List; + +import static android.app.ActivityManager.RECENT_IGNORE_UNAVAILABLE; + + +public class JGYUtils { + private static final String TAG = JGYUtils.class.getSimpleName(); + + private static JGYUtils sInstance; + private Context mContext; + public static int MTKPlatform = 1; + public static int ZhanruiPlatform = 2; + public static int UnknowPlatform = 0; + public static String MTKTag = "MTK"; + public static String ZhanruiTag = "展锐"; + + + private JGYUtils(Context context) { + this.mContext = context; + } + + public static void init(Context context) { + if (sInstance == null) { + sInstance = new JGYUtils(context); + } + } + + public static JGYUtils getInstance() { + if (sInstance == null) { + throw new IllegalStateException("You must be init JGYUtils first"); + } + return sInstance; + } + + public static boolean isOfficialVersion() { + String channelValue = JGYUtils.getInstance().getStringMetaData(); + return "official".equals(channelValue); + } + + public static boolean isNewlyVersion() { + String channelValue = JGYUtils.getInstance().getStringMetaData(); + return "beta".equals(channelValue); + } + + public static boolean isBetaVersion() { + String channelValue = JGYUtils.getInstance().getStringMetaData(); + return "beta".equals(channelValue); + } + + + + private int getBatteryLevel() { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + BatteryManager batteryManager = (BatteryManager) mContext.getSystemService(Context.BATTERY_SERVICE); + return batteryManager.getIntProperty(BatteryManager.BATTERY_PROPERTY_CAPACITY); + } else { + Intent intent = new ContextWrapper(mContext).registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); + return (intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1) * 100) / + intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1); + } + } + + + private PowerManager.WakeLock wakeLock = null; + private static final String mWakeLockName = "BackupService"; + + /** + * 获取电源锁,保持该服务在屏幕熄灭时仍然获取CPU时,保持运行 + */ + @SuppressLint("InvalidWakeLockTag") + private synchronized void acquireWakeLock() { + if (null == wakeLock) { + PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); + wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK + | PowerManager.ON_AFTER_RELEASE, mWakeLockName); + if (null != wakeLock) { + Log.e("fht", "acquireWakeLock!"); + wakeLock.acquire(); + } + } + } + + /** + * 释放设备电源锁 + */ + private synchronized void releaseWakeLock() { + if (null != wakeLock) { + Log.e("fht", "releaseWakeLock!"); + wakeLock.release(); + wakeLock = null; + } + } + + + /** + * @param ids 需要管控的ID + * @param packages 应用程序包名 + */ + public void writeDeselectIDtoSystem(String ids, String packages) { + if (!TextUtils.isEmpty(ids) && !TextUtils.isEmpty(packages)) { + ArrayList idArrayList = new ArrayList<>(Arrays.asList(ids.split(","))); + ArrayList packageArrayList = new ArrayList<>(Arrays.asList(packages.split(","))); + LinkedHashSet idHashSet = new LinkedHashSet<>(idArrayList); + LinkedHashSet packageHashSet = new LinkedHashSet<>(packageArrayList); + ArrayList idList = new ArrayList<>(idHashSet); + ArrayList packageList = new ArrayList<>(packageHashSet); + StringBuilder idStringBuilder = new StringBuilder(); + for (String id : idList) { + if (idStringBuilder.length() > 0) { + idStringBuilder.append(","); + } + idStringBuilder.append(id); + } + StringBuilder packageStringBuilder = new StringBuilder(); + for (String pkg : packageList) { + if (packageStringBuilder.length() > 0) { + packageStringBuilder.append(","); + } + packageStringBuilder.append(pkg); + } + + + String olddeselectViewArray = Settings.System.getString(mContext.getContentResolver(), "qch_app_forbid_id"); + Log.e("writeDeselectIDtoSystem", "olddeselectViewArray: " + olddeselectViewArray); + + Settings.System.putString(mContext.getContentResolver(), "qch_app_forbid_id", packageStringBuilder.toString()); + Settings.System.putString(mContext.getContentResolver(), "DeselectViewArray", idStringBuilder.toString()); + Log.e("writeDeselectIDtoSystem", "qch_app_forbid_id: " + packageStringBuilder.toString()); + Log.e("writeDeselectIDtoSystem", "deselectViewArray: " + idStringBuilder.toString()); + } else { + Log.e("writeDeselectIDtoSystem", "writeDeselectIDtoSystem is null:"); + Settings.System.putString(mContext.getContentResolver(), "qch_app_forbid_id", ""); + Settings.System.putString(mContext.getContentResolver(), "DeselectViewArray", ""); + } + } + + + + + private static void sendAllweb(Context context) { + Intent intent = new Intent("qch_app_website") + .setPackage("com.android.settings"); + intent.putExtra("package_name", "Invalid"); + context.sendBroadcast(intent); + } + + private static void sendwebUrl(Context context) { + Intent intent = new Intent("qch_app_inside_website") + .setPackage("com.android.settings"); + intent.putExtra("websitelist", "Invalid"); + context.sendBroadcast(intent); + } + + + /** + * 从Manifest中获取meta-data值 + * https://blog.csdn.net/yue_233/article/details/91453451 + * + * @return + */ + public String getStringMetaData() { + ApplicationInfo appInfo = null; + try { + appInfo = mContext.getPackageManager().getApplicationInfo(mContext.getPackageName(), PackageManager.GET_META_DATA); + } catch (PackageManager.NameNotFoundException e) { + e.printStackTrace(); + } + String value = appInfo.metaData.getString("CHANNEL_VALUE"); + return value; + } + + public void hookWebView() { + int sdkInt = Build.VERSION.SDK_INT; + try { + Class factoryClass = Class.forName("android.webkit.WebViewFactory"); + Field field = factoryClass.getDeclaredField("sProviderInstance"); + field.setAccessible(true); + Object sProviderInstance = field.get(null); + if (sProviderInstance != null) { + Log.i(TAG, "sProviderInstance isn't null"); + return; + } + + Method getProviderClassMethod; + if (sdkInt > 22) { + getProviderClassMethod = factoryClass.getDeclaredMethod("getProviderClass"); + } else if (sdkInt == 22) { + getProviderClassMethod = factoryClass.getDeclaredMethod("getFactoryClass"); + } else { + Log.i(TAG, "Don't need to Hook WebView"); + return; + } + getProviderClassMethod.setAccessible(true); + Class factoryProviderClass = (Class) getProviderClassMethod.invoke(factoryClass); + Class delegateClass = Class.forName("android.webkit.WebViewDelegate"); + Constructor delegateConstructor = delegateClass.getDeclaredConstructor(); + delegateConstructor.setAccessible(true); + if (sdkInt < 26) {//低于Android O版本 + Constructor providerConstructor = factoryProviderClass.getConstructor(delegateClass); + if (providerConstructor != null) { + providerConstructor.setAccessible(true); + sProviderInstance = providerConstructor.newInstance(delegateConstructor.newInstance()); + } + } else { + Field chromiumMethodName = factoryClass.getDeclaredField("CHROMIUM_WEBVIEW_FACTORY_METHOD"); + chromiumMethodName.setAccessible(true); + String chromiumMethodNameStr = (String) chromiumMethodName.get(null); + if (chromiumMethodNameStr == null) { + chromiumMethodNameStr = "create"; + } + Method staticFactory = factoryProviderClass.getMethod(chromiumMethodNameStr, delegateClass); + if (staticFactory != null) { + sProviderInstance = staticFactory.invoke(null, delegateConstructor.newInstance()); + } + } + + if (sProviderInstance != null) { + field.set("sProviderInstance", sProviderInstance); + Log.i(TAG, "Hook success!"); + } else { + Log.i(TAG, "Hook failed!"); + } + } catch (Throwable e) { + Log.w(TAG, e); + } + } + + + /** + * 忽略电池优化 + */ + private void ignoreBatteryOptimization(Context context) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + + PowerManager powerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); + + boolean hasIgnored = powerManager.isIgnoringBatteryOptimizations(context.getPackageName()); + // 判断当前APP是否有加入电池优化的白名单,如果没有,弹出加入电池优化的白名单的设置对话框。 + if (!hasIgnored) { + Intent intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS); + intent.setData(Uri.parse("package:" + context.getPackageName())); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + mContext.startActivity(intent); + } + } + } + + public void KillOTA() { + ActivityManager manager = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE); + manager.killBackgroundProcesses("com.adups.fota"); + CmdUtil.execute("am force-stop " + "com.adups.fota"); + } + + public void openOTA() { + Intent intent = new Intent(Intent.ACTION_MAIN); + /**知道要跳转应用的包命与目标Activity*/ + ComponentName componentName = new ComponentName("com.adups.fota", "com.adups.fota.GoogleOtaClient"); + intent.setComponent(componentName); + mContext.startActivity(intent); + } + + public int checkSNPlatform(String sn) { + String secondChars = sn.substring(1, 2); + if ("N".equalsIgnoreCase(secondChars)) {//MTK平台 + return MTKPlatform; + } else if ("R".equalsIgnoreCase(secondChars)) {//展锐平台 + return ZhanruiPlatform; + } else { + Log.e(TAG, "checkSNPlatform: " + "sn: " + sn + "没有对应平台"); + return UnknowPlatform; + } + } + + public int checkAppPlatform() { + String platform = BuildConfig.platform; + if ("MTK".equalsIgnoreCase(platform)) { + Log.i(TAG, "checkAppPlatform: " + "MTK平台"); + return MTKPlatform; + } else if ("ZhanRui".equalsIgnoreCase(platform)) { + Log.i(TAG, "checkAppPlatform: " + "展锐平台"); + return ZhanruiPlatform; + } else { + Log.i(TAG, "checkAppPlatform: " + "没有数据"); + return UnknowPlatform; + } + } + + public boolean isSamePlatform(String platform) { + String AppPlatform = BuildConfig.platform; + if ("ZhanRui".equals(AppPlatform)) { + return ZhanruiTag.equals(platform); + } else { + return AppPlatform.equals(platform); + } + } + + public interface GetAppPlatformCallback { + void AppPlatform(int platform); + } + + public void getAppPlatform(GetAppPlatformCallback getAppPlatformCallback) { + String platform = BuildConfig.platform; + if ("MTK".equalsIgnoreCase(platform)) { + getAppPlatformCallback.AppPlatform(MTKPlatform); + } else if ("ZhanRui".equalsIgnoreCase(platform)) { + getAppPlatformCallback.AppPlatform(ZhanruiPlatform); + } else { + getAppPlatformCallback.AppPlatform(UnknowPlatform); + } + } + + public void killBackgroundProcesses(Context context, String processName) { + gotoLauncher(); + // mIsScanning = true; + removeTask(processName); + ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); + String packageName = null; + try { + if (processName.indexOf(":") == -1) { + packageName = processName; + } else { + packageName = processName.split(":")[0]; + } + activityManager.killBackgroundProcesses(packageName); + // + Method forceStopPackage = activityManager.getClass() + .getDeclaredMethod("forceStopPackage", String.class); + forceStopPackage.setAccessible(true); + forceStopPackage.invoke(activityManager, packageName); + } catch (Exception e) { + e.printStackTrace(); + } + } + + /** + * 清除所有最近记录 + */ + public void removeAllTask(Context context) { + List list = getRecentTasks(ActivityManager.getMaxRecentTasksStatic(), getCurrentUserId()); + + for (ActivityManager.RecentTaskInfo info : list) { + if (info.realActivity != null) { + Log.e(TAG, "removeAllTask: " + info.realActivity.getPackageName()); + //排除自身 + if (BuildConfig.APPLICATION_ID.equals(info.realActivity.getPackageName())) { + continue; + } + } + try { + ActivityManagerNative.getDefault().removeTask(info.id); + } catch (RemoteException e) { + e.printStackTrace(); + Log.e(TAG, "removeAllTask: " + e.getMessage()); + } + } + } + + public void removeTask(String packageName) { + List list = getRecentTasks(ActivityManager.getMaxRecentTasksStatic(), getCurrentUserId()); + HashMap taskMap = new HashMap<>(); + for (ActivityManager.RecentTaskInfo info : list) { + taskMap.put(info.realActivity.getPackageName(), info.id); + } + try { + ActivityManagerNative.getDefault().removeTask(taskMap.get(packageName)); + } catch (RemoteException e) { + e.printStackTrace(); + Log.e(TAG, "removeTask: " + e.getMessage()); + } catch (NullPointerException e) { + Log.e(TAG, "removeTask: " + e.getMessage()); + } + } + + /** + * 如果界面正在最近任务列表,有些app可能不会被清理 + */ + private void gotoLauncher() { + Intent i = new Intent(Intent.ACTION_MAIN); + i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //android123提示如果是服务里调用,必须加入new task标识 + i.addCategory(Intent.CATEGORY_HOME); + mContext.startActivity(i); + } + + + /** + * @return a list of the recents tasks. + * 获取近期任务列表 + */ + public List getRecentTasks(int numTasks, int userId) { + try { + return ActivityTaskManager.getService().getRecentTasks(numTasks, + RECENT_IGNORE_UNAVAILABLE, userId).getList(); + } catch (RemoteException e) { + Log.e(TAG, "Failed to get recent tasks", e); + return new ArrayList<>(); + } + } + + /** + * @return the current user's id. + * 获取userId + */ + public int getCurrentUserId() { + UserInfo ui; + try { + ui = ActivityManager.getService().getCurrentUser(); + return ui != null ? ui.id : 0; + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + +} diff --git a/app/src/main/java/com/info/sn/utils/LogUtils.java b/app/src/main/java/com/info/sn/utils/LogUtils.java index fd7e391..096241a 100644 --- a/app/src/main/java/com/info/sn/utils/LogUtils.java +++ b/app/src/main/java/com/info/sn/utils/LogUtils.java @@ -8,7 +8,7 @@ import com.info.sn.BuildConfig; * @author Administrator */ public class LogUtils { - static boolean isDebug = BuildConfig.LOG_DEBUG; + static boolean isDebug = BuildConfig.DEBUG; public static void v(String tag, String msg) { if (isDebug) { diff --git a/app/src/main/java/com/info/sn/utils/ToastUtil.java b/app/src/main/java/com/info/sn/utils/ToastUtil.java index 3702e8c..487a787 100644 --- a/app/src/main/java/com/info/sn/utils/ToastUtil.java +++ b/app/src/main/java/com/info/sn/utils/ToastUtil.java @@ -52,7 +52,7 @@ public class ToastUtil { debugHandler.post(new Runnable() { @Override public void run() { - if (BuildConfig.LOG_DEBUG) { + if (BuildConfig.DEBUG) { if (debugToast != null) { debugToast.setText(msg); debugToast.show(); diff --git a/app/src/main/java/com/info/sn/utils/URLUtils.java b/app/src/main/java/com/info/sn/utils/URLUtils.java new file mode 100644 index 0000000..f940db2 --- /dev/null +++ b/app/src/main/java/com/info/sn/utils/URLUtils.java @@ -0,0 +1,242 @@ +package com.info.sn.utils; + +import android.content.Context; +import android.os.Build; +import android.provider.Settings; +import android.text.TextUtils; +import android.util.Log; +import android.webkit.WebSettings; + +import java.io.IOException; +import java.net.URI; +import java.net.URL; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import io.reactivex.Observable; +import io.reactivex.ObservableEmitter; +import io.reactivex.ObservableOnSubscribe; +import io.reactivex.Observer; +import io.reactivex.android.schedulers.AndroidSchedulers; +import io.reactivex.disposables.Disposable; +import io.reactivex.schedulers.Schedulers; +import okhttp3.Call; +import okhttp3.OkHttpClient; +import okhttp3.Request; +import okhttp3.Response; + +public class URLUtils { + private static String TAG = URLUtils.class.getSimpleName(); + private Context mContext; + private List baseURLList = new ArrayList<>(); + + public URLUtils(Context context) { + this.mContext = context; + } + + public void setBrowserList() { + String whiteList = Settings.System.getString(mContext.getContentResolver(), "DeselectBrowserArray"); + String homePage = Settings.System.getString(mContext.getContentResolver(), "homepagURL"); + + if (TextUtils.isEmpty(whiteList)) { + Log.e(TAG, "getBrowserWhiteList: " + "whiteList is empty"); + } else { + List URLList = new ArrayList<>(Arrays.asList(whiteList.split(","))); + if (!TextUtils.isEmpty(homePage)) { + if (URLList != null && !URLList.contains(homePage)) { + URLList.add(homePage); + } + } + Observable.create(new ObservableOnSubscribe() { + @Override + public void subscribe(ObservableEmitter emitter) throws Exception { + baseURLList.clear(); + baseURLList.addAll(URLList); + for (String url : URLList) { + if (url.startsWith("http://")) { + String noHttp = url.substring(7); + if (!baseURLList.contains(noHttp)) { + baseURLList.add(noHttp); + } + emitter.onNext(getOkHttpURL(url)); + } else if (url.startsWith("https://")) { + String noHttps = url.substring(8); + if (!baseURLList.contains(noHttps)) { + baseURLList.add(noHttps); + } + emitter.onNext(getOkHttpURL(url)); + } else { + baseURLList.add("http://" + url); + emitter.onNext(getOkHttpURL("http://" + url)); + baseURLList.add("https://" + url); + emitter.onNext(getOkHttpURL("https://" + url)); + } + Log.e(TAG, "subscribe: " + url); + } + emitter.onComplete(); + } + }).subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + + } + + @Override + public void onNext(String s) { + Log.e(TAG, "onNext: " + s); + if (!baseURLList.contains(s)) { + baseURLList.add(s); + } + if (s.startsWith("http://")) { + String noHttp = s.substring(7); + Log.e(TAG, "onNext: noHttp: " + noHttp); + if (!baseURLList.contains(noHttp)) { + baseURLList.add(noHttp); + } + } + if (s.startsWith("https://")) { + String noHttps = s.substring(8); + Log.e(TAG, "onNext: noHttps: " + noHttps); + if (!baseURLList.contains(noHttps)) { + baseURLList.add(noHttps); + } + } + } + + @Override + public void onError(Throwable e) { + Log.e(TAG, "onError: " + e.getMessage()); + } + + @Override + public void onComplete() { + Log.e(TAG, "onComplete: "); + StringBuilder stringBuilder = new StringBuilder(); + for (String s : baseURLList) { + if (stringBuilder.length() > 0) { + stringBuilder.append(","); + } + stringBuilder.append(s); + } + String DeselectBrowserArray = stringBuilder.toString(); + boolean write = Settings.System.putString(mContext.getContentResolver(), "DeselectBrowserArray", DeselectBrowserArray); + Log.e(TAG, "onComplete: " + "white list: " + DeselectBrowserArray); + Log.e(TAG, "onComplete: " + "write :" + write); + } + }); + } + + } + + private String getOkHttpURL(String URL) { + OkHttpClient okHttpClient = new OkHttpClient(); + final Request request = new Request.Builder() + .url(URL) + .removeHeader("User-Agent") + .addHeader("User-Agent", getUserAgent()) + .get()//默认就是GET请求,可以不写 + .build(); + Call call = okHttpClient.newCall(request); +// call.enqueue(new Callback() { +// @Override +// public void onFailure(Call call, IOException e) { +// Log.e(TAG, "onFailure: "); +// } +// +// @Override +// public void onResponse(Call call, Response response) throws IOException { +// Log.e(TAG, "onResponse: " + getIP(response.request().url().uri())); +// } +// }); + try { + Response response = call.execute(); + if (response.isSuccessful()) { + Log.e(TAG, "getOkHttpURL: " + response.request().url().toString()); + return getIP(response.request().url().uri()).toString(); + } else { + return ""; + } + } catch (IOException e) { + e.printStackTrace(); + Log.e(TAG, "getOkHttpURL: " + e.getMessage()); + return ""; + } + } + + /** + * Gets ip. + * 通过url获取到域名 + * + * @param url the url + * @return the ip + */ + public String getIP(String url) { + //使用正则表达式过滤, + String re = "((http|ftp|https)://)(([a-zA-Z0-9._-]+)|([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}))(([a-zA-Z]{2,6})|(:[0-9]{1,4})?)"; + String str = ""; + // 编译正则表达式 + Pattern pattern = Pattern.compile(re); + // 忽略大小写的写法 + // Pattern pat = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE); + Matcher matcher = pattern.matcher(url); + //若url==http://127.0.0.1:9040或www.baidu.com的,正则表达式表示匹配 + if (matcher.matches()) { + str = url; + } else { + String[] split2 = url.split(re); + if (split2.length > 1) { + String substring = url.substring(0, url.length() - split2[1].length()); + str = substring; + } else { + str = split2[0]; + } + } + return str; + } + + private URI getIP(URI uri) { + URI effectiveURI = null; + try { + // URI(String scheme, String userInfo, String host, int port, String + // path, String query,String fragment) + effectiveURI = new URI(uri.getScheme(), uri.getUserInfo(), uri.getHost(), uri.getPort(), null, null, null); + } catch (Throwable var4) { + effectiveURI = null; + } + return effectiveURI; + } + + /** + * @return 获取浏览器的UA + */ + private String getUserAgent() { + String userAgent = ""; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { + try { + userAgent = WebSettings.getDefaultUserAgent(mContext); + //需要hook webview + } catch (Exception e) { + Log.e(TAG, "getUserAgent: " + e.getMessage()); + userAgent = System.getProperty("http.agent"); + } + } else { + userAgent = System.getProperty("http.agent"); + } + StringBuffer sb = new StringBuffer(); + for (int i = 0, length = userAgent.length(); i < length; i++) { + char c = userAgent.charAt(i); + if (c <= '\u001f' || c >= '\u007f') { + sb.append(String.format("\\u%04x", (int) c)); + } else { + sb.append(c); + } + } + Log.e(TAG, "getUserAgent: " + sb.toString()); + return sb.toString(); + } +} diff --git a/app/src/main/java/com/info/sn/utils/Utils.java b/app/src/main/java/com/info/sn/utils/Utils.java index 24d1f55..775e970 100644 --- a/app/src/main/java/com/info/sn/utils/Utils.java +++ b/app/src/main/java/com/info/sn/utils/Utils.java @@ -1,86 +1,86 @@ package com.info.sn.utils; - import android.annotation.SuppressLint; - import android.app.ActivityManager; - import android.app.admin.DevicePolicyManager; - import android.bluetooth.BluetoothAdapter; - import android.content.ActivityNotFoundException; - import android.content.ComponentName; - import android.content.Context; - import android.content.ContextWrapper; - import android.content.Intent; - import android.content.IntentFilter; - import android.content.SharedPreferences; - import android.content.pm.ApplicationInfo; - import android.content.pm.PackageInfo; - import android.content.pm.PackageManager; - import android.content.pm.PackageManager.NameNotFoundException; - import android.content.pm.ResolveInfo; - import android.content.res.Resources; - import android.graphics.Bitmap; - import android.graphics.BitmapFactory; - import android.graphics.Canvas; - import android.graphics.Paint; - import android.graphics.PorterDuff; - import android.graphics.PorterDuffXfermode; - import android.net.ConnectivityManager; - import android.net.NetworkInfo; - import android.net.Uri; - import android.net.wifi.WifiInfo; - import android.net.wifi.WifiManager; - import android.os.BatteryManager; - import android.os.Build; - import android.os.StatFs; - import android.provider.Settings; - import android.telephony.TelephonyManager; - import android.text.TextUtils; - import android.text.format.Formatter; - import android.util.DisplayMetrics; - import android.util.Log; - import android.view.MotionEvent; - import android.view.View; - import android.view.WindowManager; - import android.view.inputmethod.InputMethodManager; - import android.widget.EditText; - import android.widget.Toast; +import android.annotation.SuppressLint; +import android.app.ActivityManager; +import android.app.admin.DevicePolicyManager; +import android.bluetooth.BluetoothAdapter; +import android.content.ActivityNotFoundException; +import android.content.ComponentName; +import android.content.Context; +import android.content.ContextWrapper; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.SharedPreferences; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.content.pm.PackageManager.NameNotFoundException; +import android.content.pm.ResolveInfo; +import android.content.res.Resources; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Canvas; +import android.graphics.Paint; +import android.graphics.PorterDuff; +import android.graphics.PorterDuffXfermode; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; +import android.net.Uri; +import android.net.wifi.WifiInfo; +import android.net.wifi.WifiManager; +import android.os.BatteryManager; +import android.os.Build; +import android.os.StatFs; +import android.provider.Settings; +import android.telephony.TelephonyManager; +import android.text.TextUtils; +import android.text.format.Formatter; +import android.util.DisplayMetrics; +import android.util.Log; +import android.view.MotionEvent; +import android.view.View; +import android.view.WindowManager; +import android.view.inputmethod.InputMethodManager; +import android.widget.EditText; +import android.widget.Toast; - import com.alibaba.fastjson.JSON; - import com.alibaba.fastjson.JSONArray; - import com.alibaba.fastjson.JSONObject; - import com.google.zxing.BarcodeFormat; - import com.google.zxing.EncodeHintType; - import com.google.zxing.WriterException; - import com.google.zxing.common.BitMatrix; - import com.google.zxing.qrcode.QRCodeWriter; - import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; - import com.info.sn.BuildConfig; - import com.info.sn.R; - import com.info.sn.bean.SystemSettings; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.google.zxing.BarcodeFormat; +import com.google.zxing.EncodeHintType; +import com.google.zxing.WriterException; +import com.google.zxing.common.BitMatrix; +import com.google.zxing.qrcode.QRCodeWriter; +import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; +import com.info.sn.BuildConfig; +import com.info.sn.R; +import com.info.sn.bean.SystemSettings; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileFilter; +import java.io.FileReader; +import java.io.InputStreamReader; +import java.io.LineNumberReader; +import java.io.Reader; +import java.lang.reflect.Method; +import java.net.NetworkInterface; +import java.net.SocketException; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Calendar; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.regex.Pattern; - import java.io.BufferedReader; - import java.io.File; - import java.io.FileFilter; - import java.io.FileReader; - import java.io.InputStreamReader; - import java.io.LineNumberReader; - import java.io.Reader; - import java.lang.reflect.Method; - import java.net.NetworkInterface; - import java.net.SocketException; - import java.security.MessageDigest; - import java.security.NoSuchAlgorithmException; - import java.text.SimpleDateFormat; - import java.util.ArrayList; - import java.util.Arrays; - import java.util.Calendar; - import java.util.Collections; - import java.util.Date; - import java.util.HashMap; - import java.util.List; - import java.util.Map; - import java.util.regex.Pattern; - import static java.lang.System.getProperty; public class Utils { @@ -1045,7 +1045,7 @@ public class Utils { } } - private static void setIcon(Context mContext,SystemSettings settings) { + private static void setIcon(Context mContext, SystemSettings settings) { try { //added:2019.12.6 //设置5个app的开关 @@ -1090,7 +1090,7 @@ public class Utils { /** * @param context - * @param notList 禁止列表 + * @param notList 禁止列表 * @param allowList 允许列表 * @return */ @@ -1145,6 +1145,7 @@ public class Utils { *在写入白名单之后和安装完成之后执行 */ } + public static String getIMEI(Context context) { String IMEI = "unknow"; String IMEI1, IMEI2, IMEI3; @@ -1258,6 +1259,7 @@ public class Utils { return 0; } } + /** * 描述:获取可用内存. * @@ -1364,6 +1366,19 @@ public class Utils { return jsonObject.toJSONString(); } + public static String getProperty(String key, String defaultValue) { + String value = defaultValue; + try { + Class c = Class.forName("android.os.SystemProperties"); + Method get = c.getMethod("get", String.class, String.class); + value = (String) (get.invoke(c, key, "unknown")); + } catch (Exception e) { + e.printStackTrace(); + } finally { + return value; + } + } + public static String getHardware(Context context) { int electric = getBattery(context); int charging = getIsCharging(context); diff --git a/app/src/main/res/drawable-hdpi/logo.png b/app/src/main/res/drawable-hdpi/logo.png index 985e4d2ebd4b4c3027fc55c568067460e477a9ac..885554a25baa7d1db99ae42e271055faed3b1f75 100644 GIT binary patch literal 107084 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 N)RlFVDivOb{|^vE`3e94 diff --git a/app/src/main/res/layout-land/activity_main.xml b/app/src/main/res/layout-land/activity_main.xml index f32d045..2dae99e 100644 --- a/app/src/main/res/layout-land/activity_main.xml +++ b/app/src/main/res/layout-land/activity_main.xml @@ -62,7 +62,7 @@ + app:layout_constraintStart_toStartOf="parent" /> + + + diff --git a/app/src/main/res/layout-port/activity_main.xml b/app/src/main/res/layout-port/activity_main.xml index 163e189..0296ffe 100644 --- a/app/src/main/res/layout-port/activity_main.xml +++ b/app/src/main/res/layout-port/activity_main.xml @@ -46,7 +46,7 @@ + app:layout_constraintStart_toStartOf="parent" /> + \ No newline at end of file diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png index 8daec7d259a3baea2b56d2a2538c1d4f565ab600..060c9e2877cccf0efc15199a79559b0cc44858cc 100644 GIT binary patch delta 7855 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 Iq|Ac<2X&CgbpQYW delta 5682 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 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png index 8daec7d259a3baea2b56d2a2538c1d4f565ab600..060c9e2877cccf0efc15199a79559b0cc44858cc 100644 GIT binary patch delta 7855 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 Iq|Ac<2X&CgbpQYW delta 5682 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 diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png index 8daec7d259a3baea2b56d2a2538c1d4f565ab600..060c9e2877cccf0efc15199a79559b0cc44858cc 100644 GIT binary patch delta 7855 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 Iq|Ac<2X&CgbpQYW delta 5682 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 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png index 8daec7d259a3baea2b56d2a2538c1d4f565ab600..060c9e2877cccf0efc15199a79559b0cc44858cc 100644 GIT binary patch delta 7855 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 Iq|Ac<2X&CgbpQYW delta 5682 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 diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png index 8daec7d259a3baea2b56d2a2538c1d4f565ab600..060c9e2877cccf0efc15199a79559b0cc44858cc 100644 GIT binary patch delta 7855 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 Iq|Ac<2X&CgbpQYW delta 5682 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 diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index e164500..787f057 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -7,5 +7,6 @@ #ffffff #000000 #80808080 + #D3D3D3 diff --git a/app/src/test/java/com/info/sn/ExampleUnitTest.java b/app/src/test/java/com/info/sn/ExampleUnitTest.java new file mode 100644 index 0000000..36c20b8 --- /dev/null +++ b/app/src/test/java/com/info/sn/ExampleUnitTest.java @@ -0,0 +1,17 @@ +package com.info.sn; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Example local unit test, which will execute on the development machine (host). + * + * @see Testing documentation + */ +public class ExampleUnitTest { + @Test + public void addition_isCorrect() { + assertEquals(4, 2 + 2); + } +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..199d16e --- /dev/null +++ b/gradle.properties @@ -0,0 +1,20 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# 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. +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 +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app's APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Automatically convert third-party libraries to use AndroidX +android.enableJetifier=true + diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 56df4d5..edb85c2 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..cccdd3d --- /dev/null +++ b/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..f955316 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,84 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega