Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove edconfig.jar #687

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,22 @@ buildscript {
}

allprojects {
// Values set here will be overriden by AppVeyor, feel free to modify during development.
def buildVersionName = 'v0.5.0.8'
def buildVersionCode = 233

if (System.env.APPVEYOR_BUILD_VERSION != null) {
buildVersionName = "v${System.getenv('appveyor_build_version')}"
}

if (System.env.APPVEYOR_BUILD_NUMBER != null) {
// Split is necessary because PRs set the build number to "1234-something".
def parts = System.env.APPVEYOR_BUILD_NUMBER.split('-')
buildVersionCode = Integer.valueOf(parts[0])
}
ext {
versionCode = buildVersionCode
versionName = buildVersionName
templateRootPath = project(":edxp-core").projectDir.path + "/template_override/"
templateSystemPath = templateRootPath + "/system/"
templateSystemx86Path = templateRootPath + "/system_x86/"
Expand Down
6 changes: 6 additions & 0 deletions edxp-common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ android {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
buildConfigField("String", "VERSION_NAME", "\"${rootProject.ext.versionName}\"")
buildConfigField("Integer", "VERSION_CODE", String.valueOf(rootProject.ext.versionCode))
}
debug {
buildConfigField("String", "VERSION_NAME", "\"${rootProject.ext.versionName}\"")
buildConfigField("Integer", "VERSION_CODE", String.valueOf(rootProject.ext.versionCode))
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,6 @@ public String getInstallerPackageName() {
return ConfigManager.getInstallerPackageName();
}

@Override
public String getXposedPropPath() {
return ConfigManager.getXposedPropPath();
}
@Override
public String getLibSandHookName() {
return ConfigManager.getLibSandHookName();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,6 @@ private static boolean isFileExists(String path) {

public static native String getInstallerPackageName();

public static native String getXposedPropPath();

public static native String getLibSandHookName();

public static native String getInstallerConfigPath(String suffix);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package com.elderdrivers.riru.edxp.hooker;

import com.elderdrivers.riru.edxp.config.ConfigManager;
import com.elderdrivers.riru.edxp.common.BuildConfig;
import com.elderdrivers.riru.edxp.core.EdxpImpl;
import com.elderdrivers.riru.edxp.core.Main;
import com.elderdrivers.riru.edxp.util.Utils;

import java.io.File;
import java.io.FileInputStream;
import java.io.ByteArrayInputStream;
import java.io.IOException;

import de.robv.android.xposed.XC_MethodHook;
import de.robv.android.xposed.XC_MethodReplacement;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.XposedHelpers;

Expand Down Expand Up @@ -43,10 +43,27 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
Utils.logD("reloadXposedProp already done, skip...");
return;
}
File file = new File(ConfigManager.getXposedPropPath());
FileInputStream is = null;
try {
is = new FileInputStream(file);
//version=92.0-$version ($backend)
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("version=");
stringBuilder.append(XposedBridge.getXposedVersion());
stringBuilder.append(".0-");
stringBuilder.append(BuildConfig.VERSION_NAME);
stringBuilder.append(" (");
String variant = "None";
switch (Main.getEdxpVariant()) {
case EdxpImpl.NONE:
break;
case EdxpImpl.YAHFA:
variant = "YAHFA";
break;
case EdxpImpl.SANDHOOK:
variant = "SandHook";
break;
}
stringBuilder.append(variant);
stringBuilder.append(")");
try (ByteArrayInputStream is = new ByteArrayInputStream(stringBuilder.toString().getBytes())) {
Object props = XposedHelpers.callStaticMethod(InstallZipUtil,
"parseXposedProp", is);
synchronized (thisObject) {
Expand All @@ -55,14 +72,7 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
Utils.logD("reloadXposedProp done...");
param.setResult(null);
} catch (IOException e) {
Utils.logE("Could not read " + file.getPath(), e);
} finally {
if (is != null) {
try {
is.close();
} catch (IOException ignored) {
}
}
Utils.logE("Could not reloadXposedProp", e);
}
}
});
Expand Down
39 changes: 8 additions & 31 deletions edxp-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,29 +8,12 @@ apply plugin: 'com.android.library'
static def calcSha256(file) {
def md = MessageDigest.getInstance("SHA-256")
file.eachByte 4096, { bytes, size ->
md.update(bytes, 0, size);
md.update(bytes, 0, size)
}
return md.digest().encodeHex()
}

// Values set here will be overriden by AppVeyor, feel free to modify during development.
def buildVersionName = 'v0.5.0.8'
def buildVersionCode = 233

if (System.env.APPVEYOR_BUILD_VERSION != null) {
buildVersionName = "v${System.getenv('appveyor_build_version')}"
}

if (System.env.APPVEYOR_BUILD_NUMBER != null) {
// Split is necessary because PRs set the build number to "1234-something".
def parts = System.env.APPVEYOR_BUILD_NUMBER.split('-')
buildVersionCode = Integer.valueOf(parts[0])
}

version buildVersionName

ext {
versionCode = buildVersionCode
module_name = "EdXposed"
jar_dest_dir = "${projectDir}/template_override/system/framework/"
is_windows = OperatingSystem.current().isWindows()
Expand Down Expand Up @@ -60,8 +43,8 @@ android {
cppFlags "-std=c++17 -ffixed-x18 -Qunused-arguments -frtti -fomit-frame-pointer"
cFlags "-std=gnu99 -ffixed-x18 -Qunused-arguments -frtti -fomit-frame-pointer"
arguments "-DRIRU_MODULE_API_VERSION=$moduleMaxRiruApiVersion",
"-DRIRU_MODULE_VERSION=$buildVersionCode",
"-DRIRU_MODULE_VERSION_NAME:STRING=\"$buildVersionName\""
"-DRIRU_MODULE_VERSION=$rootProject.ext.versionCode",
"-DRIRU_MODULE_VERSION_NAME:STRING=\"$rootProject.ext.versionName\""
}
}
}
Expand Down Expand Up @@ -123,28 +106,22 @@ afterEvaluate {
dependsOn prepareJarsTask, "assemble${variantCapped}"
delete file(zipPathMagiskRelease)
doFirst {
copy {
from "${projectDir}/tpl/edconfig.tpl"
into templateFrameworkPath
rename "edconfig.tpl", "edconfig.jar"
expand(version: "$version", backend: "$backend")
}
copy {
from "${projectDir}/tpl/module.prop.tpl"
into templateRootPath
rename "module.prop.tpl", "module.prop"
expand(moduleId: "$magiskModuleId", backend: "$backendCapped",
versionName: "$version" + " ($backend)",
versionCode: "$versionCode", authorList: "$authorList")
versionName: "$rootProject.ext.versionName" + " ($backend)",
versionCode: "$rootProject.ext.versionCode", authorList: "$authorList")
filter(FixCrLfFilter.class, eol: FixCrLfFilter.CrLf.newInstance("lf"))
}
copy {
from "${projectDir}/tpl/riru_module.prop.tpl"
into "$templateRootPath/riru"
rename "riru_module.prop.tpl", "module.prop.new"
expand(minApi: "$moduleMinRiruApiVersion",
versionName: "$version" + " ($backend)",
versionCode: "$versionCode", authorList: "$authorList")
versionName: "$rootProject.ext.versionName" + " ($backend)",
versionCode: "$rootProject.ext.versionCode", authorList: "$authorList")
filter(FixCrLfFilter.class, eol: FixCrLfFilter.CrLf.newInstance("lf"))
}
}
Expand Down Expand Up @@ -196,7 +173,7 @@ afterEvaluate {

def zipTask = task("zip${backendCapped}${variantCapped}", type: Zip) {
dependsOn prepareMagiskFilesTask
archiveName "${module_name}-${backend}-${project.version}-${variantLowered}.zip"
archiveName "${module_name}-${backend}-${rootProject.ext.versionName}-${variantLowered}.zip"
destinationDir file("$projectDir/release")
from "$zipPathMagiskRelease"
}
Expand Down
8 changes: 1 addition & 7 deletions edxp-core/src/main/cpp/main/src/config_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,6 @@ namespace edxp {
LOGI("using installer %s", kPrimaryInstallerPkgName.c_str());
return kPrimaryInstallerPkgName;
}
data_test_path = data_path_prefix_ / kLegacyInstallerPkgName;
if (path_exists(data_test_path)) {
LOGI("using installer %s", kLegacyInstallerPkgName.c_str());
return kLegacyInstallerPkgName;
}
LOGE("no supported installer app found, using default: %s",
kPrimaryInstallerPkgName.c_str());
return kPrimaryInstallerPkgName;
Expand Down Expand Up @@ -134,8 +129,7 @@ namespace edxp {
package_name.c_str());
use_white_list = use_white_list_snapshot_;
}
if (package_name == kPrimaryInstallerPkgName
|| package_name == kLegacyInstallerPkgName) {
if (package_name == kPrimaryInstallerPkgName) {
// always hook installer apps
return true;
}
Expand Down
4 changes: 0 additions & 4 deletions edxp-core/src/main/cpp/main/src/config_manager.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@
namespace edxp {

static const std::string kPrimaryInstallerPkgName = "org.meowcat.edxposed.manager";
static const std::string kLegacyInstallerPkgName = "de.robv.android.xposed.installer";
static const std::string kXposedPropPath = "/system/framework/edconfig.jar";

class ConfigManager {
public:
Expand Down Expand Up @@ -44,8 +42,6 @@ namespace edxp {

inline auto GetInstallerPackageName() const { return installer_pkg_name_; }

inline auto GetXposedPropPath() const { return kXposedPropPath; }

inline auto GetLibSandHookName() const { return kLibSandHookName; }

inline auto GetDataPathPrefix() const { return data_path_prefix_; }
Expand Down
5 changes: 0 additions & 5 deletions edxp-core/src/main/cpp/main/src/jni/edxp_config_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,6 @@ namespace edxp {
return env->NewStringUTF(ConfigManager::GetInstance()->GetInstallerPackageName().c_str());
}

static jstring ConfigManager_getXposedPropPath(JNI_START) {
return env->NewStringUTF(ConfigManager::GetInstance()->GetXposedPropPath().c_str());
}

static jstring ConfigManager_getLibSandHookName(JNI_START) {
return env->NewStringUTF(ConfigManager::GetInstance()->GetLibSandHookName().c_str());
}
Expand Down Expand Up @@ -67,7 +63,6 @@ namespace edxp {
NATIVE_METHOD(ConfigManager, isDeoptBootImageEnabled, "()Z"),
NATIVE_METHOD(ConfigManager, isNoModuleLogEnabled, "()Z"),
NATIVE_METHOD(ConfigManager, getInstallerPackageName, "()Ljava/lang/String;"),
NATIVE_METHOD(ConfigManager, getXposedPropPath, "()Ljava/lang/String;"),
NATIVE_METHOD(ConfigManager, getLibSandHookName, "()Ljava/lang/String;"),
NATIVE_METHOD(ConfigManager, getDataPathPrefix, "()Ljava/lang/String;"),
NATIVE_METHOD(ConfigManager, getInstallerConfigPath,
Expand Down
9 changes: 1 addition & 8 deletions edxp-core/template_override/customize.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,6 @@ JAR_EDDALVIKDX="$(getRandomNameExist 8 "" ".dex" "
JAR_EDDEXMAKER="$(getRandomNameExist 8 "" ".dex" "
/system/framework
").dex"
#JAR_EDCONFIG="$(getRandomNameExist 8 "" ".jar" "
#/system/framework
#").jar"
LIB_RIRU_EDXP="libriru_${RIRU_EDXP}.so"
LIB_SANDHOOK_EDXP="lib$(getRandomNameExist 13 "lib" ".so" "
/system/lib
Expand Down Expand Up @@ -238,7 +235,6 @@ extract "${ZIPFILE}" 'sepolicy.rule' "${MODPATH}"
extract "${ZIPFILE}" 'post-fs-data.sh' "${MODPATH}"
extract "${ZIPFILE}" 'uninstall.sh' "${MODPATH}"

extract "${ZIPFILE}" 'system/framework/edconfig.jar' "${MODPATH}"
extract "${ZIPFILE}" 'system/framework/eddalvikdx.dex' "${MODPATH}"
extract "${ZIPFILE}" 'system/framework/eddexmaker.dex' "${MODPATH}"
extract "${ZIPFILE}" 'system/framework/edxp.dex' "${MODPATH}"
Expand Down Expand Up @@ -271,7 +267,7 @@ else
fi
fi

if [[ "$(pm path org.meowcat.edxposed.manager)" == "" && "$(pm path de.robv.android.xposed.installer)" == "" ]]; then
if [[ "$(pm path org.meowcat.edxposed.manager)" == "" ]]; then
NO_MANAGER=true
fi

Expand All @@ -292,7 +288,6 @@ ui_print "- Copying framework libraries"
mv "${MODPATH}/system/framework/eddalvikdx.dex" "${MODPATH}/system/framework/${JAR_EDDALVIKDX}"
mv "${MODPATH}/system/framework/edxp.dex" "${MODPATH}/system/framework/${JAR_EDXP}"
mv "${MODPATH}/system/framework/eddexmaker.dex" "${MODPATH}/system/framework/${JAR_EDDEXMAKER}"
#mv "${MODPATH}/system/framework/edconfig.jar" "${MODPATH}/system/framework/${JAR_EDCONFIG}"
mv "${MODPATH}/system/lib/libriru_edxp.so" "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"

if [[ "${IS64BIT}" == true ]]; then
Expand All @@ -309,13 +304,11 @@ fi
ui_print "- Resetting libraries path"

sed -i 's:/system/framework/edxp.dex\:/system/framework/eddalvikdx.dex\:/system/framework/eddexmaker.dex:/system/framework/'"${JAR_EDXP}"'\:/system/framework/'"${JAR_EDDALVIKDX}"'\:/system/framework/'"${JAR_EDDEXMAKER}"':g' "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"
#sed -i 's:/system/framework/edconfig.jar:/system/framework/'"${JAR_EDCONFIG}"':g' "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"
sed -i 's:libriru_edxp.so:'"${LIB_RIRU_EDXP}"':g' "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"
sed -i 's:libsandhook.edxp.so:'"${LIB_SANDHOOK_EDXP}"':g' "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"

if [[ "${IS64BIT}" == true ]]; then
sed -i 's:/system/framework/edxp.dex\:/system/framework/eddalvikdx.dex\:/system/framework/eddexmaker.dex:/system/framework/'"${JAR_EDXP}"'\:/system/framework/'"${JAR_EDDALVIKDX}"'\:/system/framework/'"${JAR_EDDEXMAKER}"':g' "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
# sed -i 's:/system/framework/edconfig.jar:/system/framework/'"${JAR_EDCONFIG}"':g' "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
sed -i 's:libriru_edxp.so:'"${LIB_RIRU_EDXP}"':g' "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
sed -i 's:libsandhook.edxp.so:'"${LIB_SANDHOOK_EDXP}"':g' "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
fi
Expand Down
2 changes: 1 addition & 1 deletion edxp-core/template_override/post-fs-data.sh
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ cp -f "/system/bin/app_process32" "${MODDIR}/system/bin/app_process32"
[[ -f "/system/bin/app_process64" ]] && cp -f "/system/bin/app_process64" "${MODDIR}/system/bin/app_process64"

# install stub if manager not installed
if [[ "$(pm path org.meowcat.edxposed.manager)" == "" && "$(pm path de.robv.android.xposed.installer)" == "" ]]; then
if [[ "$(pm path org.meowcat.edxposed.manager)" == "" ]]; then
NO_MANAGER=true
fi
if [[ ${NO_MANAGER} == true ]]; then
Expand Down
5 changes: 0 additions & 5 deletions edxp-core/tpl/edconfig.tpl

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ public interface EdxpConfig {

String getInstallerPackageName();

String getXposedPropPath();

String getLibSandHookName();

boolean isDynamicModulesMode();
Expand Down