Update core to 1.8.3
This commit is contained in:
parent
3bc39e1e94
commit
a9b27b1427
2
core
2
core
|
|
@ -1 +1 @@
|
|||
Subproject commit ee2c1a3320a4173c50c03c1fb3d5e0181840ee77
|
||||
Subproject commit b36c170b8c6e138b7211371c47764f63c83a6f1e
|
||||
|
|
@ -23,6 +23,7 @@
|
|||
|
||||
#include <jni.h>
|
||||
|
||||
#include "config_impl.h"
|
||||
#include "patch_loader.h"
|
||||
|
||||
JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved) {
|
||||
|
|
@ -31,6 +32,7 @@ JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved) {
|
|||
return JNI_ERR;
|
||||
}
|
||||
lspd::PatchLoader::Init();
|
||||
lspd::ConfigImpl::Init();
|
||||
lspd::PatchLoader::GetInstance()->Load(env);
|
||||
return JNI_VERSION_1_6;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* This file is part of LSPosed.
|
||||
*
|
||||
* LSPosed is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* LSPosed is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Copyright (C) 2022 LSPosed Contributors
|
||||
*/
|
||||
|
||||
//
|
||||
// Created by Nullptr on 2022/5/11.
|
||||
//
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include "ConfigBridge.h"
|
||||
|
||||
namespace lspd {
|
||||
|
||||
class ConfigImpl : public ConfigBridge {
|
||||
public:
|
||||
inline static void Init() {
|
||||
instance_ = std::make_unique<ConfigImpl>();
|
||||
}
|
||||
|
||||
virtual obfuscation_map_t& obfuscation_map() override {
|
||||
return obfuscation_map_;
|
||||
}
|
||||
|
||||
virtual void obfuscation_map(obfuscation_map_t m) override {
|
||||
obfuscation_map_ = std::move(m);
|
||||
}
|
||||
|
||||
private:
|
||||
inline static std::map<std::string, std::string> obfuscation_map_ = {
|
||||
{"de.robv.android.xposed.", "de.robv.android.xposed."},
|
||||
{ "android.app.AndroidApp", "android.app.AndroidApp"},
|
||||
{ "android.content.res.XRes", "android.content.res.XRes"},
|
||||
{ "android.content.res.XModule", "android.content.res.XModule"},
|
||||
{ "org.lsposed.lspd.core.", "org.lsposed.lspd.core."},
|
||||
{ "org.lsposed.lspd.nativebridge.", "org.lsposed.lspd.nativebridge."},
|
||||
{ "org.lsposed.lspd.service.", "org.lsposed.lspd.service."},
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -25,7 +25,6 @@
|
|||
#include "art/runtime/jit/profile_saver.h"
|
||||
#include "elf_util.h"
|
||||
#include "jni/bypass_sig.h"
|
||||
#include "native_hook.h"
|
||||
#include "native_util.h"
|
||||
#include "patch_loader.h"
|
||||
#include "symbol_cache.h"
|
||||
|
|
@ -100,8 +99,10 @@ namespace lspd {
|
|||
.art_symbol_resolver = [](auto symbol) {
|
||||
return GetArt()->getSymbAddress<void*>(symbol);
|
||||
},
|
||||
.art_symbol_prefix_resolver = [](auto symbol) {
|
||||
return GetArt()->getSymbPrefixFirstOffset(symbol);
|
||||
},
|
||||
};
|
||||
InstallInlineHooks(env, initInfo);
|
||||
|
||||
auto stub = JNI_FindClass(env, "org/lsposed/lspatch/appstub/LSPAppComponentFactoryStub");
|
||||
auto dex_field = JNI_GetStaticFieldID(env, stub, "dex", "[B");
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ package org.lsposed.lspatch.share;
|
|||
|
||||
public class LSPConfig {
|
||||
|
||||
public static final LSPConfig instance = factory();
|
||||
public static final LSPConfig instance;
|
||||
|
||||
public int API_CODE;
|
||||
public int VERSION_CODE;
|
||||
|
|
@ -13,13 +13,12 @@ public class LSPConfig {
|
|||
private LSPConfig() {
|
||||
}
|
||||
|
||||
private static LSPConfig factory() {
|
||||
LSPConfig config = new LSPConfig();
|
||||
config.API_CODE = ${apiCode};
|
||||
config.VERSION_CODE = ${verCode};
|
||||
config.VERSION_NAME = "${verName}";
|
||||
config.CORE_VERSION_CODE = ${coreVerCode};
|
||||
config.CORE_VERSION_NAME = "${coreVerName}";
|
||||
return config;
|
||||
static {
|
||||
instance = new LSPConfig();
|
||||
instance.API_CODE = ${apiCode};
|
||||
instance.VERSION_CODE = ${verCode};
|
||||
instance.VERSION_NAME = "${verName}";
|
||||
instance.CORE_VERSION_CODE = ${coreVerCode};
|
||||
instance.CORE_VERSION_NAME = "${coreVerName}";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue