Android
About Android
![Android logo](images/Android_logo.gif)
Android is an open-source platform for mobile devices that
includes an operating system, middleware and key applications
(e-mail, browser, media player and the like). It is currently
developed by Google.
The operating system kernel is based on a heavily modified version
of Linux. Google no longer maintains the code they previously
contributed to the Linux kernel: as a consequence, the Android
kernel can be considered a fork of Linux.
On top of the kernel, Google has developed a rich set of libraries
to handle all the basic needs of modern mobile systems: fonts, 2D
and 3D graphics, data storage, communication over the web and over
cellular networks, and more.
Developing for Android
The programming language for applications is Java, although the Java bytecode is translated upon compilation into a proprietary binary format that is run into a custom virtual machine called Dalvik or ART in newer versions.
A software development kit (SDK) to develop Java applications for
Android can be freely
downloaded from Google's site. No registration is required.
The Android SDK includes a debugger, a device emulator,
documentation, sample code, and tutorials. Currently supported
development platforms include Linux, Mac OS X, and Windows Vista
or later.
Development in C/C++ is also possible by installing a separate
toolset called Android
NDK.
The official Integrated Development Environment for Android
applications is now Android
Studio. By installing Android Studio, the SDK is
automatically installed as well.
The previous official IDE, i.e., Eclipse,
is still supported via the Android Development Tools (ADT)
Plugin.
Misc on Android
Links on the Java Programming Language
The Java language specification: http://java.sun.com/docs/books/jls/index.html.
The full book can be downloaded in PDF format.
Links on the Android Platform
2008 Google I/O Session Videos and Slides: Anatomy
& Physiology of an Android.
MIT App
Inventor: formerly developed by Google, this tool allows you
to develop applications visually, without writing any code.
From Ed Burnette's blog: iPhone
vs. Android development.
AndroidDevelopers's channel on YouTube: http://www.youtube.com/user/androiddevelopers.
White paper: "The
Growth of Android in Embedded Systems". Registration is
required for download.
Links to "advanced" developer tools
Debugging: Lint
scans Android project sources for potential bugs (requires ADT 16
or later).
Debugging: SetAlwaysFinish
is an app that lets you force quit activities, thus allowing you
to test whether they correctly process lifecycle events such as onSaveInstanceState and onRestoreInstanceState.
The app is not necessary in Android 4.x, where the same action can
be easily performed via the "Do not keep activities" developer
option.
Android
Design Website contains design guidelines and useful
resources (font, icons, ...) to develop user interfaces.
UI
utils utilities to create icons, stencils and more for user
interfaces design.
"Displaying
Bitmaps Efficiently" covers some common techniques for
processing and loading bitmaps while respecting the severe
constraints on memory dictated by the Android platform (Android
devices can have as little as 16MB of memory available to a single
application).
Links on Archos gen8 Devices
ArchosFans.com support forums: http://forum.archosfans.com/.
ADB Driver: official Archos
support, unofficial discussion
on ArchosFans.
Tutorial: Installing
Google Play. Once Google Play is installed, you can upgrade
to the latest version of Google
Play Services and add Google applications such as Maps.
Connecting Archos 32/70 to the DEI Wi-Fi Network
Protezione: 802.1x EAP
Metodo EAP: TTLS
Autenticazione fase 2: MSCHAPV2
Certificato CA: (non specificati)
Certificato utente: (non specificati)
Identità: <insert DEI username>
Identità anonima: <leave blank>
Password: <insert DEI password>
Android Ports
Nook
Developing: Nook is an Android-based eBook reader
distributed by Barnes
& Noble.
Video
of Ice Cream Sandwich running on Nokia N900 from NITDroid Forum.