Application Fundamentals 1.
Partiamo dalle cose fondamentali o dalle basi come dice un caro amico. Spero che non ci siano problemi con l'inglese anche perchè il mondo che stiamo per esplorare è nella maggior parte espresso in questa maniera, nonostante tantissimi contributi nella lingua di Dante stanno costruendo mondo parallelo italiano. In sintesi le prossime documentazioni saranno rivisitazioni di documenti trovati in rete ai quali cerchero' di associare le fonti ed i link associati, il piu' fedelmente possibile, rivisitati e riveduti con un po' di farina del mio sacco, sperando che anche questo possa essere utile alla comunità.Intanto alcuni link basilari da cui certamente partire.Google. SI PARTE DA QUA. LA MECCA DEGLI SVILUPPATORI.
Il Design. IL DESIGN E' FONDAMENTALE.
Androidiani. UN GRANDE RIFERIMENTO IN ITALIANO.
Quickview
- Android applications are composed of one or more application components (activities, services, content providers, and broadcast receivers)
- Each component performs a different role in the overall application behavior, and each one can be activated individually (even by other applications)
- The manifest file must declare all components in the application and should also declare all application requirements, such as the minimum version of Android required and any hardware configurations required
- Non-code application resources (images, strings, layout files, etc.) should include alternatives for different device configurations (such as different strings for different languages and different layouts for different screen sizes)
Android applications are written in the Java programming language. The Android SDK tools compile the code—along with any data and resource files—into an Android package, an archive file with an .apk suffix.
All the code in a single .apk file is considered to be one application and is the file that Android-powered devices use to install the application.
Once installed on a device, each Android application lives in its own security sandbox:
- The Android operating system is a multi-user Linux system in which each application is a different user.
- By default, the system assigns each application a unique Linux user ID (the ID is used only by the system and is unknown to the application). The system sets permissions for all the files in an application so that only the user ID assigned to that application can access them.
- Each process has its own virtual machine (VM), so an application's code runs in isolation from other applications.
- By default, every application runs in its own Linux process. Android starts the process when any of the application's components need to be executed, then shuts down the process when it's no longer needed or when the system must recover memory for other applications.
In this way, the Android system implements the principle of least privilege.
That is, each application, by default, has access only to the components that it requires to do its work and no more. This creates a very secure environment in which an application cannot access parts of the system for which it is not given permission.
However, there are ways for an application to share data with other applications and for an application to access system services:
- It's possible to arrange for two applications to share the same Linux user ID, in which case they are able to access each other's files. To conserve system resources, applications with the same user ID can also arrange to run in the same Linux process and share the same VM (the applications must also be signed with the same certificate).
- An application can request permission to access device data such as the user's contacts, SMS messages, the mountable storage (SD card), camera, Bluetooth, and more. All application permissions must be granted by the user at install time.
That covers the basics regarding how an Android application exists within the system.
Un utile attività da svolgere per prendere confidenza con i processi generati dalle applicazioni android installate sull'emulatore fornito con l'adk, oppure su di un dispositivo collegato via usb, è quella di procedere con la connessione via Android Debug Bridge dell'sdk,e visualizzare i processi delle applicazioni.
Un promemoria per quanto riguarda l'attività sistemistica legata all'ambiente android verrà pubblicata al piu' presto.

Nessun commento:
Posta un commento