1use jni::JNIEnv;
2use jni::objects::{JClass, JString};
3use jni::sys::jstring;
4
5#[unsafe(no_mangle)]
6pub extern "C" fn Java_com_example_rustandroid_RustJni_hello<'local>(
7 mut env: JNIEnv<'local>,
8 _class: JClass<'local>,
9 input: JString<'local>,
10) -> jstring {
11 let input_str: String = env
12 .get_string(&input)
13 .expect("Couldn't get java string!")
14 .into();
15
16 let output = env
17 .new_string(format!("Hello, {}! (from Rust)", input_str))
18 .expect("Couldn't create java string!");
19
20 output.into_raw()
21}