1#[cfg(feature = "embed")]
2pub mod embed;
3
4#[cfg(feature = "android")]
5pub(crate) mod externs;
6#[cfg(feature = "android")]
7pub(crate) mod utils;
8
9#[cfg(feature = "android")]
10mod crossbow;
11#[cfg(feature = "android")]
12pub mod error;
13#[cfg(feature = "android")]
14pub mod permission;
15#[cfg(feature = "android")]
16pub mod plugin;
17
18#[cfg(feature = "android")]
19pub use crossbow::*;
20#[cfg(feature = "android")]
21pub use jni;
22#[cfg(feature = "android")]
23pub use plugin::CrossbowPlugin;
24
25#[cfg(feature = "android")]
27pub fn get_java_vm() -> error::Result<(ndk_context::AndroidContext, jni::JavaVM)> {
28 let ctx = ndk_context::android_context();
29 let vm = unsafe { jni::JavaVM::from_raw(ctx.vm().cast()) }?;
30 Ok((ctx, vm))
31}