Replace JniType with ReferenceType; use new types in Env and caches; support dynamic class loading for proxies#12
Replace JniType with ReferenceType; use new types in Env and caches; support dynamic class loading for proxies#12wuwbobo2021 wants to merge 5 commits intoDirbaio:mainfrom
JniType with ReferenceType; use new types in Env and caches; support dynamic class loading for proxies#12Conversation
|
Why have you added the calls to |
|
Code for registering native methods is added for the runtime dex class loader "technique", so that the user of some possible upstream library based on I've added an optional argument in Also note that the object array type signature runtime generation is fixed here; this code crashes with log prompt let arr_obj_arr = ObjectArray::<ObjectArray<String, Throwable>, Throwable>::new(env, 10);
let cast: &Ref<'_, ObjectArray::<ObjectArray<Object, Throwable>, Throwable>> = arr_obj_arr.cast_ref().unwrap();
info!("Created the array.");Side note: the current |
|
Changed To make Why change Current logcat message of trying to create L2CAP channel on an Android 9.0 device (not crashing): |
|
Sorry, I just found a mistake while porting the generated proxy code to the old |
Envmethods: this doesn't change any behavior.Envmethods: reduced some redundant code, howeverEnv::get_class_nameprobably becomes a bit less strong.JniTypewithReferenceType; use new types inEnvand caches: this is the major breaking change. Generated class bindings now implementReferenceTypebut notJniType. Generated JNI type names for multi-dimension arrays changed from[L[I;,[L[Ljava/lang/String;;to[[I,[[Ljava/lang/String;.JClassare added for class caches.JClass,JMethodIDandJFieldIDare made public to be used inEnvmethods.Trying to test `bluest` here
Based on akiles-dev/bluest@3c55517.
Added in
java-spaghetti.yaml:Added
build.rs:Changed
android/adapter.rs:bluest-test'sCargo.toml:bluest-test'slib.rs: