Skip to main content

android_example/
lib.rs

1#[cfg(target_os = "android")]
2use freya::prelude::{
3    LaunchConfig,
4    WindowConfig,
5    launch,
6};
7#[cfg(target_os = "android")]
8use winit::platform::android::activity::AndroidApp;
9
10#[cfg(target_os = "android")]
11mod app;
12
13#[cfg(target_os = "android")]
14#[unsafe(no_mangle)]
15fn android_main(droid_app: AndroidApp) {
16    use freya_winit::renderer::NativeEvent;
17    use winit::{
18        event_loop::EventLoop,
19        platform::android::EventLoopBuilderExtAndroid,
20    };
21
22    android_logger::init_once(
23        android_logger::Config::default().with_max_level(log::LevelFilter::Debug),
24    );
25
26    let event_loop = EventLoop::<NativeEvent>::with_user_event()
27        .with_android_app(droid_app)
28        .build()
29        .expect("Failed to build event loop");
30
31    launch(
32        LaunchConfig::new()
33            .with_window(WindowConfig::new(app::app))
34            .with_event_loop(event_loop),
35    )
36}