Skip to content

Releases: rust-mobile/ndk

ndk-glue v0.7.0

26 Jul 12:03
9a8be25
Compare
Choose a tag to compare
  • Breaking: Provide a LockReadGuard newtype around NativeWindow/InputQueue to hide the underlying lock implementation. (#288)
  • Breaking: Transpose LockReadGuard<Option<T>> into Option<LockReadGuard<T>> to only necessitate an Option unpack/unwrap() once. (#282)

ndk v0.7.0

26 Jul 12:03
9a8be25
Compare
Choose a tag to compare
  • hardware_buffer: Make HardwareBuffer::as_ptr() public for interop with Vulkan. (#213)
  • Breaking: Configuration::country() now returns None when the country is unset (akin to Configuration::language()). (#220)
  • Add MediaCodec and MediaFormat bindings. (#216)
  • Breaking: Upgrade to ndk-sys 0.4.0 and use new enum newtype wrappers. (#245)
  • native_window: Use release/acquire for Drop and Clone respectively. (#207)
  • Breaking: audio: Rename from aaudio to audio and drop A prefix. (#273)
  • Implement HasRawWindowHandle directly on NativeWindow. (#274, #319)
  • Breaking: native_activity: Replace CStr return types with Path. (#279)
  • native_window: Add format() getter and set_buffers_geometry() setter. (#276)
  • native_activity: Add set_window_format() setter. (#277)
  • native_activity: Add set_window_flags() to change window behavior. (#278)
  • Add SurfaceTexture bindings. (#267)
  • Improve library and structure documentation, linking back to the NDK docs more rigorously. (#290)
  • Breaking: input_queue: get_event() now returns a Result with std::io::Error; InputQueueError has been removed. (#292)
  • Breaking: input_queue: has_events() now returns a bool directly without being wrapped in Result. (#294)
  • Breaking: hardware_buffer: HardwareBufferError has been removed and replaced with std::io::Error in return types. (#295)
  • Fixed HardwareBuffer leak on buffers returned from AndroidBitmap::get_hardware_buffer(). (#296)
  • Breaking: Update jni crate (used in public API) from 0.18 to 0.19. (#300)
  • hardware_buffer: Made HardwareBufferDesc fields pub. (#313)
  • Breaking: Remove hardware_buffer and trace features in favour of using api-level-26 or api-level-23 directly. (#320)

ndk-build v0.7.0

05 Jul 08:37
dc38fcb
Compare
Choose a tag to compare
  • Fix NDK r23 -lgcc workaround for target directories containing spaces. (#298)
  • Invoke clang directly instead of through the NDK's wrapper scripts. (#306)
  • Breaking: Rename Activity::intent_filters back to Activity::intent_filter. (#305)

cargo-apk v0.9.3

05 Jul 08:38
dc38fcb
Compare
Choose a tag to compare
  • Allow configuration of alternate debug keystore location; require keystore location for release builds. (#299)
  • Breaking: Rename Activity::intent_filters back to Activity::intent_filter. (#305)

ndk-build v0.6.0

13 Jun 12:47
60e34d1
Compare
Choose a tag to compare
  • Breaking: Provide NDK r23 -lgcc workaround in cargo_ndk() function, now requiring target_dir as argument. (#286)
  • Breaking: Add disable_aapt_compression field to ApkConfig to disable aapt compression. (#283)

cargo-apk v0.9.2

13 Jun 12:47
60e34d1
Compare
Choose a tag to compare
  • Move NDK r23 -lgcc workaround to ndk_build::cargo::cargo_ndk(), to also apply to our cargo apk -- invocations. (#286)
  • Disable aapt compression for the (default) dev profile. (#283)
  • Append --target to blanket cargo apk -- calls when not provided by the user. (#287)

cargo-apk v0.9.1

14 May 12:01
7cabf63
Compare
Choose a tag to compare
  • Reimplement NDK r23 -lgcc workaround using RUSTFLAGS, to apply to transitive cdylib compilations. (#270)

ndk-build v0.5.0

12 May 08:38
16ae6bc
Compare
Choose a tag to compare
  • Breaking: Default target_sdk_version to 30 or lower (instead of the highest supported SDK version by the detected NDK toolchain)
    for more consistent interaction with Android backwards compatibility handling and its increasingly strict usage rules:
    https://developer.android.com/distribute/best-practices/develop/target-sdk
  • Breaking: Remove default insertion of MAIN intent filter through a custom serialization function, this is better filled in by
    the default setup in cargo-apk. (#241)
  • Add android:exported attribute to the manifest's Activity element. (#242)
  • Add android:sharedUserId attribute to the manifest's top-level manifest element. (#252)
  • Add queries element to the manifest's top-level manifest element. (#259)

cargo-apk v0.9.0

12 May 08:38
16ae6bc
Compare
Choose a tag to compare
  • Breaking: Use min_sdk_version to select compiler target instead of target_sdk_version. (#197)
    See https://developer.android.com/ndk/guides/sdk-versions#minsdkversion for more details.
  • Breaking: Default target_sdk_version to 30 or lower (instead of the highest supported SDK version by the detected NDK toolchain)
    for more consistent interaction with Android backwards compatibility handling and its increasingly strict usage rules:
    https://developer.android.com/distribute/best-practices/develop/target-sdk
    (#203)
  • Allow manifest package property to be provided in Cargo.toml. (#236)
  • Add MAIN intent filter in from_subcommand instead of relying on a custom serialization function in ndk-build. (#241)
  • Export the sole NativeActivity (through android:exported="true") to allow it to be started by default if targeting Android S or higher. (#242)
  • cargo-apk version can now be queried through cargo apk version. (#218)
  • Environment variables from .cargo/config.toml's [env] section are now propagated to the process environment. (#249)

ndk-glue v0.5.1

15 Feb 19:19
4579ab3
Compare
Choose a tag to compare
  • Initialize ndk-context 0.1.0 for cross-version access to the Java VM and Android Context.