Update LSPlant for Android 15

Convert ScopedLocalRef to its reference, otherwise we get error:

no viable conversion from 'ScopedLocalRef<_jobject *>' (aka 'lsplant::ScopedLocalRef<_jobject *>') to 'jobject' (aka '_jobject *')
This commit is contained in:
JingMatrix 2024-07-23 22:07:01 +02:00
parent 56a058bd27
commit b56313157e
5 changed files with 11 additions and 11 deletions

View File

@ -67,11 +67,11 @@ val injectedPackageUid by extra(2000)
val defaultManagerPackageName by extra("org.lsposed.manager")
val verCode by extra(commitCount)
val verName by extra(latestTag)
val androidTargetSdkVersion by extra(34)
val androidTargetSdkVersion by extra(35)
val androidMinSdkVersion by extra(27)
val androidBuildToolsVersion by extra("34.0.0")
val androidCompileSdkVersion by extra(34)
val androidCompileNdkVersion by extra("26.3.11579264")
val androidBuildToolsVersion by extra("35.0.0")
val androidCompileSdkVersion by extra(35)
val androidCompileNdkVersion by extra("27.0.12077973")
val androidSourceCompatibility by extra(JavaVersion.VERSION_21)
val androidTargetCompatibility by extra(JavaVersion.VERSION_21)

View File

@ -87,7 +87,7 @@ namespace lspd {
LOGE("Failed to get cookie");
return;
}
lsplant::MakeDexFileTrusted(env, cookie);
lsplant::MakeDexFileTrusted(env, cookie.get());
}
RegisterResourcesHook(env);
RegisterHookBridge(env);

View File

@ -122,8 +122,8 @@ LSP_DEF_NATIVE_METHOD(jboolean, HookBridge, hookMethod, jboolean useModernApi, j
auto before_method = JNI_GetObjectField(env, callback, before_method_field);
auto after_method = JNI_GetObjectField(env, callback, after_method_field);
auto callback_type = ModuleCallback {
.before_method = env->FromReflectedMethod(before_method),
.after_method = env->FromReflectedMethod(after_method),
.before_method = env->FromReflectedMethod(before_method.get()),
.after_method = env->FromReflectedMethod(after_method.get()),
};
hook_item->modern_callbacks.emplace(priority, callback_type);
} else {
@ -144,7 +144,7 @@ LSP_DEF_NATIVE_METHOD(jboolean, HookBridge, unhookMethod, jboolean useModernApi,
JNIMonitor monitor(env, backup);
if (useModernApi) {
auto before_method = JNI_GetObjectField(env, callback, before_method_field);
auto before = env->FromReflectedMethod(before_method);
auto before = env->FromReflectedMethod(before_method.get());
for (auto i = hook_item->modern_callbacks.begin(); i != hook_item->modern_callbacks.end(); ++i) {
if (before == i->second.before_method) {
hook_item->modern_callbacks.erase(i);
@ -312,7 +312,7 @@ LSP_DEF_NATIVE_METHOD(jobjectArray, HookBridge, callbackSnapshot, jclass callbac
auto before_method = JNI_ToReflectedMethod(env, clazz, callback.second.before_method, JNI_TRUE);
auto after_method = JNI_ToReflectedMethod(env, clazz, callback.second.after_method, JNI_TRUE);
auto callback_object = JNI_NewObject(env, callback_class, callback_ctor, before_method, after_method);
env->SetObjectArrayElement(modern, i++, env->NewLocalRef(callback_object));
env->SetObjectArrayElement(modern, i++, env->NewLocalRef(callback_object.get()));
}
for (jsize i = 0; auto callback: hook_item->legacy_callbacks) {
env->SetObjectArrayElement(legacy, i++, env->NewLocalRef(callback.second));

2
external/lsplant vendored

@ -1 +1 @@
Subproject commit b0edc5c07ca92ad7fdef21e7422f6ed3c0be5337
Subproject commit 9ce26897d3fc9a07ded56b3da612d154c1031a62

View File

@ -1,5 +1,5 @@
[versions]
agp = "8.4.0"
agp = "8.6.0-beta01"
kotlin = "1.9.23"
nav = "2.7.7"
appcenter = "5.0.4"