Add readme&license

This commit is contained in:
梁丽欣
2020-03-01 04:18:28 +08:00
parent 9e5e420cc9
commit b9ffc4012c
50 changed files with 36 additions and 125 deletions

View File

@@ -1,12 +1,14 @@
package com.sk.spatch;
import android.app.Application;
import com.tencent.tinker.loader.app.TinkerApplication;
public class App extends TinkerApplication {
public App() { super(15, VAPPLike.class.getName()); }
public static Application getApp() { return VAPPLike.getApp().getApplication(); }
public class App extends Application {
static Object gApp;
public()
{
gApp = this;
}
public static Application getApp() { return (Application)gApp; }
}

View File

@@ -1,120 +0,0 @@
package com.sk.spatch;
import android.app.Activity;
import android.app.Application;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.os.Process;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatDelegate;
import cn.refactor.lib.colordialog.PromptDialog;
import com.simple.spiderman.SpiderMan;
import com.sk.spatch.core.SInvoker;
import com.sk.spatch.core.provider.XProviderSPatch;
import com.sk.spatch.utils.SettingsControl;
import com.tencent.tinker.entry.ApplicationLike;
import com.tencent.tinker.entry.DefaultApplicationLike;
import com.tencent.tinker.lib.library.TinkerLoadLibrary;
import com.tencent.tinker.lib.tinker.Tinker;
import com.zyao89.view.zloading.ZLoadingDialog;
import com.zyao89.view.zloading.Z_TYPE;
import java.lang.reflect.Method;
import jonathanfinerty.once.Once;
public class VAPPLike extends DefaultApplicationLike {
private static VAPPLike gApp;
private boolean isEnabledNonApkModify = false;
private Object xConfig;
public VAPPLike(Application paramApplication, int paramInt, boolean paramBoolean, long paramLong1, long paramLong2, Intent paramIntent) { super(paramApplication, paramInt, paramBoolean, paramLong1, paramLong2, paramIntent); }
private void doInit(Context paramContext) {
try {
SInvoker.setStaticFieldObject("com.sk.svm.local.client.core.SettingConfig", paramContext, "hostPackage", "com.sk.spatch");
return;
} finally {
paramContext = null;
}
}
public static VAPPLike getApp() { return gApp; }
private void showFailedDialog(Throwable paramThrowable, Activity paramActivity) { (new Thread(new -$$Lambda$VAPPLike$vwIJ-Hc6Y3_GcklBmZimQqRhXoE(paramThrowable, paramActivity))).start(); }
public boolean getIsEnabledNonApkModify() { return this.isEnabledNonApkModify; }
public void initVSKCore(Context paramContext) {
Application application;
if (this.isEnabledNonApkModify) {
(new Thread(new -$$Lambda$VAPPLike$sqTl9432OPX2kzgtH0GxgBenvNs(paramContext))).start();
return;
}
this.isEnabledNonApkModify = true;
if (paramContext == null)
application = getApplication();
ZLoadingDialog zLoadingDialog = new ZLoadingDialog((Context)application);
if (application instanceof Activity) {
zLoadingDialog.setLoadingBuilder(Z_TYPE.CHART_RECT).setLoadingColor(-1).setHintText(application.getString(2131689638)).setHintTextSize(16.0F).setHintTextColor(-1).setDurationTime(0.5D).setCancelable(false).setDialogBackgroundColor(Color.parseColor("#CC111111"));
Activity activity = (Activity)application;
zLoadingDialog.getClass();
activity.runOnUiThread(new -$$Lambda$BADIMc0yy4KsYHx0OMmnSUw36VQ(zLoadingDialog));
}
(new Thread(new -$$Lambda$VAPPLike$eynCFGe_71d1LHS8ZEHlnxYy9TE(this, (Context)application, zLoadingDialog))).start();
}
public void killVSKCore(Context paramContext) { (new Thread(new -$$Lambda$VAPPLike$wKjp919kPeuFHpRTEouLrYsp8Xc(this, paramContext))).start(); }
public void onBaseContextAttached(Context paramContext) {
super.onBaseContextAttached(paramContext);
try {
SInvoker.setStaticFieldObject("com.sk.svm.qihoo.helper.utils.VLog", "OPEN_LOG", Boolean.valueOf(false));
} finally {
Exception exception;
}
try {
TinkerManager.setTinkerApplicationLike((ApplicationLike)this);
TinkerManager.initFastCrashProtect();
TinkerManager.setUpgradeRetryEnable(true);
TinkerManager.installTinker((ApplicationLike)this);
Tinker.with((Context)getApplication());
TinkerLoadLibrary.installNavitveLibraryABI(paramContext, "armeabi-v7a");
if (XProviderSPatch.getString(paramContext, "non_modify") == null) {
if (SettingsControl.getIsTemporaryLaunchEngine(paramContext))
this.isEnabledNonApkModify = true;
} else {
this.isEnabledNonApkModify = true;
}
} finally {
paramContext = null;
}
}
public void onCreate() {
if (this.isEnabledNonApkModify && XProviderSPatch.getString((Context)getApplication(), "use_unpack") != null)
try {
SInvoker.invokeStaticMethod(getApplication().getClassLoader().loadClass("com.sk.dexdumper.DumpDexV2"), "dumpDexDirectly", new Object[] { "", getApplication().getClassLoader() });
} finally {
Exception exception = null;
}
gApp = this;
super.onCreate();
Once.initialise((Context)getApplication());
if (this.isEnabledNonApkModify)
try {
Object object = SInvoker.invokeStaticMethod("com.sk.svm.local.client.core.VirtualCore", "get", new Object[0]);
-$$Lambda$VAPPLike$KXJxGIJdDROOgcjtaGbf2khhHss -$$Lambda$VAPPLike$KXJxGIJdDROOgcjtaGbf2khhHss = new -$$Lambda$VAPPLike$KXJxGIJdDROOgcjtaGbf2khhHss(object);
} finally {
Exception exception = null;
}
SpiderMan.init((Context)getApplication());
}
}
/* Location: C:\User\\user\Desktop\classes-dex2jar.jar!\com\sk\spatch\VAPPLike.class
* Java compiler version: 6 (50.0)
* JD-Core Version: 1.1.1
*/

29
license.txt Normal file
View File

@@ -0,0 +1,29 @@
SPatch开源软件协议介绍
为有效保护用户使用软件的透明纯净、安全稳定性与用户所享有软件的相关权益,
同时能更好有助于国内开源软件可持续发展麦科技官网起草制定以下开源软件协议命名为SPatch开源软件协议。
SPatch开源软件协议将致力于推动软件透明、开源创新发展主张完美主义、专注品质并呼吁尊重原创版权、宣扬信守契约精神。
本软件为组织出品,完全免费开源,与本人公司无关,且软件为非盈利所用。
以下协议有使用简称
软件产品开发方:软件官方
软件产品使用者:用户
SPatch开源软件协议约定
软件官方遵守协议约定
1) 禁止闭源发布源码程序,所有源码程序用户都可阅读。
2) 必须提供完整源码程序,可任何方式,如提供线上下载、光盘、磁盘拷贝。
3) 必须提供透明源码程序,禁止使用任何可逆或不可逆手段进行混淆源码程序。
4) 禁止任何侵权行为,包括软件的源码程序、资料文档、文件信息。
5) 禁止软件产品插入与软件官方无关的任何广告信息,包括文字、图像、媒体信息。
6) 禁止软件产品内置与软件官方程序应用无关的任何第三方插件程序、组件。
7) 禁止软件程序存在任何不经过用户许可的远程响应执行的控制程序。
8) SPatch软件不对用户的使用后果付任何责任。
9) 请有保密需求的用户,注意本软件(以及其源码)是不对您的保密需求负责的。
10) 使用本软件源码务必注明原作者GanYao和Lixin Liang。并且必须注明软件出处。
11) 原版软件拥有收集用户匿名统计信息并上报的功能,特此声明。
用户遵守协议约定
1) 禁止用户修改软件官方任何的版权说明信息,包括程序的版权协议说明、软件官方链接、文字说明、图像标志、媒体信息。
2) 禁止用户通过任何方式破坏、侵犯软件官方的正常发展运营,包括软件官方程序的正常运行与商业授权机制。
协议使用与生效声明 
使用SPatch开源软件协议的软件官方需在源码程序注释注明使用SPatch开源软件协议与附带协议说明文件
用户自安装使用SPatch开源协议的软件开始协议将立即生效。
本协议随时改变,请重置应用信息以查看最新的软件协议声明。