Optimize and Secure Your Android App
These educational materials are for intermediate to advanced Android developers, who are familiar with Android Studio, Android NDK and have some knowledge of C or C++.
Optimize Performance in C/C++ with Arm Intrinsics
Neon and SVE2 Intrinsics are a set of C/C++ functions whose precise implementation is known to the Arm compiler and GCC. They eliminate the need to write in assembly to optimize performance-intensive pieces of code, for the underlying architecture.
Video Tutorial on How to Use Neon Intrinsics
- This is a hands-on video tutorial, showcasing the steps to take to get started using Neon Intrinsics on Android.
Learning Path on Getting Started with Neon Intrinsics
- This is a hands-on written tutorial for beginners, with a step-by-step guide to what a developer needs to do to use Neon Intrinsics on Android.
Get Started with Scalable Vector Extension 2 (SVE2) Intrinsics on Android
- This is a hands-on Learning Path tutorial, that walks you through how an app calculating the fused multiply-add (FMA) is implemented using SVE2 Intrinsics on Android NDK.
Optimizing C/C++ Code with Neon Intrinsics Developer Guide
- This developer guide uses several examples to showcase and explain the use of Intrinsics.
Case Studies, Examples and More Documentation
- Several intermediate-to-advanced case studies, as well as other documentation detailing how to use Arm Neon and SVE2 architecture Intrinsics for C/C++.
Optimize Thermal and CPU Performance with Android Dynamic Performance Framework (ADPF)
ADPF optimizes the dynamic thermal and CPU management features on Android. ADPF is a set of APIs that interact more directly with power and thermal systems of Android devices.
Using ADPF for Unity Based Game Apps
- Adaptative Performance is a package from Unity that allows developers to fine-tune their games to improve the overall performance.
Using ADPF for Unreal Engine Based Game Apps
- Android ADPF Unreal Engine plugin allows Unreal developers to optimize performance through its thermal APIs.
Live Presentation from Arm & Google
- The Android Game Development Kit (AGDK) includes ADPF. This presentation covers an overview of AGDK and goes into a deep dive on how ADPF works.
- This developer guide covers the main ADPF features and how to use them.
Improve the Code Quality and Stability with the Memory Tagging Extension (MTE)
MTE is an Armv9 CPU feature, which identifies memory-related vulnerabilities to improve the security of connected devices.
Debug with MTE on Google Pixel 8
- Learn how to recognize common memory safety bugs in Android apps, and set up your Android application for debugging in Android Studio with MTE.
Hands-on Learning Path: Using MTE on Pixel 8
- Getting Started tutorial, with a step-by-step showcase on how to enable and use MTE on Pixel 8.
Video Tutorial: Using MTE on Pixel 8
- The video introduces MTE, how it works and the importance of it. Afterwards, it showcases live the steps you need to do to enable MTE, as well as covers the background.
- An in-depth user guide on the background information, as well as how to use MTE, how but reports are provided, how to debug with Android Studio and how to integrate MTE with memory management systems.
Join the Arm Developer Program
Join the Arm Developer Program to build your future on Arm. Get fresh insights directly from Arm experts,
connect with like-minded peers for advice, or build on your expertise and become an Arm Ambassador.
Community Support
Roberto Lopez Mendez
Roberto is the tech lead of the Arm Developer Advocacy team, charged with showing developers and partners how to make the most of new Arm technologies.