mirror of
https://github.com/areteruhiro/LIME-beta-hiro.git
synced 2025-02-05 21:11:39 +09:00
ラインラボのボタン作成項目を無効化
バージョンネームから取得するように
This commit is contained in:
parent
4c8bae7242
commit
e382fd88da
@ -10,7 +10,7 @@ android {
|
||||
minSdk 28
|
||||
targetSdk 35
|
||||
versionCode 11501
|
||||
versionName "1.16.01beta"
|
||||
versionName "1.16.04beta"
|
||||
multiDexEnabled false
|
||||
proguardFiles += 'proguard-rules.pro'
|
||||
buildConfigField 'String', 'HOOK_TARGET_VERSION', '"141910383"'
|
||||
|
@ -7,7 +7,6 @@ import android.widget.Toast;
|
||||
import de.robv.android.xposed.XC_MethodHook;
|
||||
import de.robv.android.xposed.XposedBridge;
|
||||
import de.robv.android.xposed.callbacks.XC_LoadPackage;
|
||||
import io.github.hiro.lime.BuildConfig;
|
||||
import io.github.hiro.lime.LimeOptions;
|
||||
import io.github.hiro.lime.R;
|
||||
import io.github.hiro.lime.Utils;
|
||||
@ -24,12 +23,12 @@ public class CheckHookTargetVersion implements IHook {
|
||||
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
|
||||
Context context = (Context) param.thisObject;
|
||||
PackageManager pm = context.getPackageManager();
|
||||
long versionCode = pm.getPackageInfo(loadPackageParam.packageName, 0).getLongVersionCode();
|
||||
String versionCodeStr = String.valueOf(versionCode);
|
||||
|
||||
if (!BuildConfig.HOOK_TARGET_VERSION.equals(versionCodeStr) &&
|
||||
!versionCodeStr.equals("142110270") &&
|
||||
!versionCodeStr.equals("150000454")) {
|
||||
String versionName = pm.getPackageInfo(loadPackageParam.packageName, 0).versionName;
|
||||
String versionNameStr = String.valueOf(versionName);
|
||||
if (!versionNameStr.equals("14.19.1")&&
|
||||
!versionNameStr.equals("14.21.1") &&
|
||||
!versionNameStr.equals("15.0.0")) {
|
||||
Utils.addModuleAssetPath(context);
|
||||
Toast.makeText(context.getApplicationContext(), context.getString(R.string.incompatible_version), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
|
@ -37,55 +37,51 @@ static HookTarget RemoveVoiceRecord_Hook_c = new HookTarget("TS.f", "run");
|
||||
), "getSystemContext");
|
||||
|
||||
PackageManager pm = context.getPackageManager();
|
||||
long versionCode = 0;
|
||||
String versionName = ""; // 初期化
|
||||
try {
|
||||
versionCode = pm.getPackageInfo(loadPackageParam.packageName, 0).getLongVersionCode();
|
||||
versionName = pm.getPackageInfo(loadPackageParam.packageName, 0).versionName;
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
// バージョンコードに応じてHookTargetを変更
|
||||
if (versionCode == 141910383) {
|
||||
USER_AGENT_HOOK = new HookTarget("Wc1.c", "h");
|
||||
WEBVIEW_CLIENT_HOOK = new HookTarget("OK0.l", "onPageFinished");
|
||||
MUTE_MESSAGE_HOOK = new HookTarget("Ob1.b", "H");
|
||||
MARK_AS_READ_HOOK = new HookTarget("WM.c$d", "run");
|
||||
Archive = new HookTarget("sB.Q", "invokeSuspend");
|
||||
NOTIFICATION_READ_HOOK = new HookTarget("qd1.b", "invokeSuspend");
|
||||
REQUEST_HOOK = new HookTarget("org.apache.thrift.l", "b");
|
||||
RESPONSE_HOOK = new HookTarget("org.apache.thrift.l", "a");
|
||||
//com.linecorp.uts.android.t with result: null
|
||||
RemoveVoiceRecord_Hook_a = new HookTarget("q.j", "run");
|
||||
//有効から無効
|
||||
RemoveVoiceRecord_Hook_b = new HookTarget("xg1.e$a", "run");
|
||||
//無効から有効
|
||||
RemoveVoiceRecord_Hook_c = new HookTarget("TS.f", "run");
|
||||
} else if (versionCode ==142110270) {
|
||||
USER_AGENT_HOOK = new HookTarget("vf1.c", "j");
|
||||
WEBVIEW_CLIENT_HOOK = new HookTarget("pN0.l", "onPageFinished");
|
||||
MARK_AS_READ_HOOK = new HookTarget("xN.b$d", "run");
|
||||
MUTE_MESSAGE_HOOK = new HookTarget("ne1.b", "H");
|
||||
Archive = new HookTarget("tB.N", "invokeSuspend");
|
||||
NOTIFICATION_READ_HOOK = new HookTarget("Pf1.c", "invokeSuspend");
|
||||
REQUEST_HOOK = new HookTarget("org.apache.thrift.l", "b");
|
||||
RESPONSE_HOOK = new HookTarget("org.apache.thrift.l", "a");
|
||||
// バージョンネームに応じてHookTargetを変更
|
||||
if (versionName.equals("14.19.1")) {
|
||||
USER_AGENT_HOOK = new HookTarget("Wc1.c", "h");
|
||||
WEBVIEW_CLIENT_HOOK = new HookTarget("OK0.l", "onPageFinished");
|
||||
MUTE_MESSAGE_HOOK = new HookTarget("Ob1.b", "H");
|
||||
MARK_AS_READ_HOOK = new HookTarget("WM.c$d", "run");
|
||||
Archive = new HookTarget("sB.Q", "invokeSuspend");
|
||||
NOTIFICATION_READ_HOOK = new HookTarget("qd1.b", "invokeSuspend");
|
||||
REQUEST_HOOK = new HookTarget("org.apache.thrift.l", "b");
|
||||
RESPONSE_HOOK = new HookTarget("org.apache.thrift.l", "a");
|
||||
RemoveVoiceRecord_Hook_a = new HookTarget("q.j", "run");
|
||||
RemoveVoiceRecord_Hook_b = new HookTarget("xg1.e$a", "run");
|
||||
RemoveVoiceRecord_Hook_c = new HookTarget("TS.f", "run");
|
||||
} else if (versionName.equals("14.21.1")) {
|
||||
USER_AGENT_HOOK = new HookTarget("vf1.c", "j");
|
||||
WEBVIEW_CLIENT_HOOK = new HookTarget("pN0.l", "onPageFinished");
|
||||
MARK_AS_READ_HOOK = new HookTarget("xN.b$d", "run");
|
||||
MUTE_MESSAGE_HOOK = new HookTarget("ne1.b", "H");
|
||||
Archive = new HookTarget("tB.N", "invokeSuspend");
|
||||
NOTIFICATION_READ_HOOK = new HookTarget("Pf1.c", "invokeSuspend");
|
||||
REQUEST_HOOK = new HookTarget("org.apache.thrift.l", "b");
|
||||
RESPONSE_HOOK = new HookTarget("org.apache.thrift.l", "a");
|
||||
RemoveVoiceRecord_Hook_a = new HookTarget("q.j", "run");
|
||||
RemoveVoiceRecord_Hook_b = new HookTarget("Fi1.j", "run");
|
||||
RemoveVoiceRecord_Hook_c = new HookTarget("Fi1.j", "run");
|
||||
} else if (versionCode == 150000454) {
|
||||
USER_AGENT_HOOK = new HookTarget("Sg1.c", "j");
|
||||
WEBVIEW_CLIENT_HOOK = new HookTarget("FO0.l", "onPageFinished");
|
||||
MUTE_MESSAGE_HOOK = new HookTarget("Lf1.b", "I");
|
||||
MARK_AS_READ_HOOK = new HookTarget("KO.d$d", "run");
|
||||
Archive = new HookTarget("tB.P", "invokeSuspend");
|
||||
NOTIFICATION_READ_HOOK = new HookTarget("mh1.b", "invokeSuspend");
|
||||
REQUEST_HOOK = new HookTarget("org.apache.thrift.l", "b");
|
||||
RESPONSE_HOOK = new HookTarget("org.apache.thrift.l", "a");
|
||||
} else if (versionName.equals("15.0.0")) {
|
||||
USER_AGENT_HOOK = new HookTarget("Sg1.c", "j");
|
||||
WEBVIEW_CLIENT_HOOK = new HookTarget("FO0.l", "onPageFinished");
|
||||
MUTE_MESSAGE_HOOK = new HookTarget("Lf1.b", "I");
|
||||
MARK_AS_READ_HOOK = new HookTarget("KO.d$d", "run");
|
||||
Archive = new HookTarget("tB.P", "invokeSuspend");
|
||||
NOTIFICATION_READ_HOOK = new HookTarget("mh1.b", "invokeSuspend");
|
||||
REQUEST_HOOK = new HookTarget("org.apache.thrift.l", "b");
|
||||
RESPONSE_HOOK = new HookTarget("org.apache.thrift.l", "a");
|
||||
RemoveVoiceRecord_Hook_a = new HookTarget("q.j", "run");
|
||||
RemoveVoiceRecord_Hook_b = new HookTarget("uk1.e$a", "run");
|
||||
RemoveVoiceRecord_Hook_c = new HookTarget("C30.f", "run");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static class HookTarget {
|
||||
|
@ -73,9 +73,9 @@ public class EmbedOptions implements IHook {
|
||||
), "getSystemContext");
|
||||
|
||||
PackageManager pm = contextV.getPackageManager();
|
||||
long versionCode = 0;
|
||||
String versionName = ""; // 初期化
|
||||
try {
|
||||
versionCode = pm.getPackageInfo(loadPackageParam.packageName, 0).getLongVersionCode();
|
||||
versionName = pm.getPackageInfo(loadPackageParam.packageName, 0).versionName;
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
@ -483,11 +483,13 @@ public class EmbedOptions implements IHook {
|
||||
// ステータスバーの高さに係数(0.1)を掛けて調整
|
||||
|
||||
|
||||
String versionCodeStr = String.valueOf(versionCode);
|
||||
if (versionCodeStr.contains("15") ) {
|
||||
layoutParams.topMargin = (int) (statusBarHeight); // ステータスバーの高さの10%をマージンに設定
|
||||
String versionNameStr = String.valueOf(versionName);
|
||||
int versionNameInt = Integer.parseInt(versionNameStr); // Convert the string to an integer
|
||||
|
||||
if (versionNameInt >= 15) {
|
||||
layoutParams.topMargin = (int) (statusBarHeight); // Set margin to status bar height
|
||||
} else {
|
||||
layoutParams.topMargin = Utils.dpToPx(5, context);
|
||||
layoutParams.topMargin = Utils.dpToPx(5, context); // Set margin to 5dp
|
||||
}
|
||||
button.setLayoutParams(layoutParams);
|
||||
button.setOnClickListener(new View.OnClickListener() {
|
||||
|
@ -7,7 +7,6 @@ import de.robv.android.xposed.XC_MethodHook;
|
||||
import de.robv.android.xposed.XposedBridge;
|
||||
import de.robv.android.xposed.XposedHelpers;
|
||||
import de.robv.android.xposed.callbacks.XC_LoadPackage;
|
||||
import io.github.hiro.lime.BuildConfig;
|
||||
import io.github.hiro.lime.LimeOptions;
|
||||
public class RemoveVoiceRecord implements IHook {
|
||||
private boolean isXg1EaRunCalled = false;
|
||||
@ -28,19 +27,21 @@ public class RemoveVoiceRecord implements IHook {
|
||||
}
|
||||
param.setResult(null);
|
||||
|
||||
Context context = (Context) XposedHelpers.callMethod(XposedHelpers.callStaticMethod(
|
||||
XposedHelpers.findClass("android.app.ActivityThread", null),
|
||||
"currentActivityThread"
|
||||
), "getSystemContext");
|
||||
PackageManager pm = context.getPackageManager();
|
||||
long versionCode = pm.getPackageInfo(loadPackageParam.packageName, 0).getLongVersionCode();
|
||||
versionCodeStr = String.valueOf(versionCode);
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
if (BuildConfig.HOOK_TARGET_VERSION.equals(versionCodeStr)) {
|
||||
Context context = (Context) XposedHelpers.callMethod(XposedHelpers.callStaticMethod(
|
||||
XposedHelpers.findClass("android.app.ActivityThread", null),
|
||||
"currentActivityThread"
|
||||
), "getSystemContext");
|
||||
PackageManager pm = context.getPackageManager();
|
||||
String versionName = ""; // 初期化
|
||||
versionName = pm.getPackageInfo(loadPackageParam.packageName, 0).versionName;
|
||||
versionName = String.valueOf(versionName);
|
||||
|
||||
if (versionName.equals("14.19.1")) {
|
||||
XposedBridge.hookAllMethods(
|
||||
loadPackageParam.classLoader.loadClass(Constants.RemoveVoiceRecord_Hook_b.className),
|
||||
"run",
|
||||
|
Loading…
Reference in New Issue
Block a user