Android was originally developed by Google and the Open Handset Alliance (OHA) for mobile applications. It is a software stack that includes Linux, middleware and key applications code. Android applications are written in Java and to support development, the OHA created both the software development kit (SDK) and Android development kit (ADK). These development kits are available at no charge and are ideal if your application is a handset.
Android Application Development with the New Arriba APK from MIPS Technologies
Now available from MIPS Technologies and created through our partnership with Viosoft Corporation, is the Arriba for Android Porting Kit (APK) for the industry-standard MIPS® architecture. The Viosoft Arriba Debugger is bundled with the Arriba APK and is the centerpiece of the kit. It is far more powerful then the original ADK, providing debug access from the Linux kernel to Android application Java code. The original ADK is limited to debugging Java code only, greatly restricting an engineer’s ability to debug real-world Android applications.
Android Development Challenges for Non-Mobile Applications
In the initial deployment of Android, libraries and middleware are specific to the ARM processor architecture. This is to be expected since ARM is widely deployed in the majority of mobile handsets, the original Android target market. However, retargeting Android for other markets beyond the mobile handset means Android must support other popular embedded processor architectures like MIPS.
To successfully develop Android applications for non mobile platforms, developers must be prepared to debug a mix of Java and C/C++ code. This is because Android Java libraries and middleware use the Java Native Interface (JNI) frequently to invoke C/C++ code in shared libraries. The original Android developers warned third party developers against using these programming practices, but to extend Android to non-mobile applications, this is exactly the kind of code that software engineers must develop and debug.
The Arriba APK is designed to help software developers and ODMs/OEMs overcome these programming challenges and bring new Android-based products to market. It includes:
- A complete cross development environment and a reference Linux kernel distribution to help developers prepare their platforms for Android-readiness
- A port of Android to selected embedded platforms that the customers can use as a working reference, or a starting point that can be refined toward their final design
- The Arriba debugger, which provides visibility into all layers of a running Android system to help developers pinpoint difficult bugs in C/C++ middleware or even kernel drivers
- The Arriba debugger does not require any kernel patches or instrumented code—enabling it to work on applications already deployed to the field
- Unlike the original ADK, which can only debug Java application code, the Arriba debugger supports debugging Java code all the way down to the Linux kernel: true “top to bottom” debug
- The APK includes five MIPS System Navigator™ EJTAG probes to support hardware bring-up, Linux kernel debug and low-level Android debug
- The Arriba debugger can also connect to the target system via an Ethernet, USB or serial port
- The EJTAG probes include a one year warranty
- To help ensure success, the Arriba APK include 60 days of Android porting support. This is intensive hands-on support, helping to ensure that you get Android successfully ported to your hardware
The Arriba Android Porting Kit contains everything a development team will require to successfully deploy Android applications on the MIPS architecture for mobile and non-mobile applications.