Android Development เขียนโปรแกรมบนแอนดรอย ( ภาษาไทย ด้านล่าง )
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. The rest of
this document introduces you to:
- The core framework components that define your application.
- The manifest file in which you declare components and required device features for your application.
- Resources that are separate from the application code and allow your application to gracefully optimize its behavior for a variety of device configurations.
In Thai Language ภาษาไทย
โปรแกรม Android เขียนโดยภาษา Java โดยใช้เครื่องมือที่เรียกว่า Android SDK ทำการรวมโค้ดพร้อมกับข้อมูลต่างๆ และไฟล์ข้อมูล ลงเป็นแพคเกจ ที่เป็นไฟล์นามสกุล APK ไฟล์ .APK จะเป็นตัวแอพลิเคชัน ใช้ในการติดตั้งโปรแกรม
เมื่อติดตั้งโปรแกรม Android ด้วย .APK จะมีระบบรักษาความปลอดภัย แบบ sandbox ของตัวเอง
เมื่อติดตั้งโปรแกรม Android ด้วย .APK จะมีระบบรักษาความปลอดภัย แบบ sandbox ของตัวเอง
- ระบบปฏิบัติการ Android เป็นระบบ Linux แบบ multi-user ซึ่งในแต่ละโปรแกรมสามารถมีผู้ใช้ที่แตกต่างกันได้
- โดยค่าเริ่มต้นจากระบบ จะกำหนดแอพลิเคชันที่ไม่ซ้ำกันในแต่ละรหัสผู้ใช้ลินุกซ์ (ID ถูกใช้โดยระบบและ ถูกใช้งานโดยโปรแกรม Application) ระบบกำหนดสิทธิ์สำหรับไฟล์ทั้งหมดในแต่ละ โปรแกรม Application เพื่อให้เฉพาะผู้ใช้ ID ที่กำหนดเท่านั้น ที่สามารถเข้าใช้โปรแกรมได้
- แต่ละการทำงาน ( Process )ก็จะมีแต่ละ Virtual Machine (VM) ของตัวเอง ดังนั้นรหัสของโปรแกรมที่ทำงานในการแยกจากโปรแกรมอื่น ๆ
โดยค่าเริ่มต้นทุกโปรแกรมทำงาน จะทำงานในระบบลินุกซ์ของตัวเอง โปรแกรม Android เริ่มเปิดกระทำงานใช้งานหน่วยความจำ และ จะปิดทำงานโปรแกรมไม่ได้ถูกใช้ หรือเมื่อระบบต้องการหน่วยความจำสำหรับโปรแกรมอื่น ๆ
ด้วยวิธีนี้ระบบ Android จะมีการใช้กระบวนการที่น้อย คือแต่ละโปรแกรมตามค่าเริ่มต้น จะมีการเข้าถึงโดยเฉพาะ ส่วน ( Component )ที่จะต้องใช้ในการทำงาน และไม่มีการต้องสร้างระบบความปลอดภัยเพิ่มเติม เพราะไม่สามารถเข้าถึงบางส่วนของระบบที่ยังไม่ได้รับอนุญาต ( permission )
แต่ก็มีวิธีที่จะใช้ข้อมูลร่วมกับโปรแกรมอื่น ๆ ได้ และสำหรับ โปรแกรม Application ที่ต้องการใช้งานข้อมูลระบบบริการ ( System Services ) มีดังนี้:
แต่ก็มีวิธีที่จะใช้ข้อมูลร่วมกับโปรแกรมอื่น ๆ ได้ และสำหรับ โปรแกรม Application ที่ต้องการใช้งานข้อมูลระบบบริการ ( System Services ) มีดังนี้:
- สามารถที่จะจัดให้มีการใช้งาน 2 โปรแกรม Application ที่ใช้ Linux User ID เดียวกัน กรณีที่ ต่างฝ่ายก็สามารถเข้าถึงไฟล์ของแต่กันและกันได้ เพื่อเป็นการประหยัดทรัพยากรในระบบโปรแกรมApplication ที่มีผู้ใช้ ID เดียวกันยังสามารถจัดให้ทำงานในกระบวนการลินุกซ์เดียวกันและแบ่งปัน virtual machine VM เดียวกัน (การใช้งานจะต้องใช้ด้วยใบรับรองเดียวกัน)
- แอพลิเคชันสามารถขออนุญาตในการเข้าถึงข้อมูลของอุปกรณ์ต่างๆ ได้ เช่น รายชื่อของผู้ใช้, ข้อความ SMS, การจัดเก็บข้อมูล (SD card), กล้อง, Bluetooth และอื่น ๆ สิทธิ์การใช้ทั้งหมดต้องได้รับ โดยผู้ใช้ยินยอม ในตอนติดตั้งโปรแกรม
Android example code ตัวอย่าง Android Code
http://androidcodeexample.blogspot.com/Android Control ควบคุมอุปกรณ์ต่างๆ ด้วย Android
http://androidcontrol.blogspot.com
สอนเขียน Android สอนเขียนโปรแกรม Android
http://androidcontrol.blogspot.com/2012/01/beginning-android-training-android.html
ไม่มีความคิดเห็น:
แสดงความคิดเห็น