Notes Introduction To Android
بِسْمِ اللّهِ الرَّحْمَنِ الرَّحِيْمِ
اللهم صل على محمد وآل محمدالسَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُه
AndroidAndroid is an open source, Linux-based software stack created for a wide array of devices.
System ApplicationsApplications are the top layerin the Android architecture and this is where our apps are going to fit into.Pre-installed apps in every device > SMS client app, dialer, web browser & contact manager.Java API FrameworkThese are the blocks that our apps directly interact with.The entire feature-set of Android-OS is available through APIs written in the Java language.These APIs form the building blocks that needs us to create Android apps by simplifying the reuse of core, modular system components and services, which include Resource Manager, Notification Manager, Location Manager, Activity Manager, Content Providers & Telephony Manager. Resource ManagerProviding access to non-code resources such as localized strings, graphics and layout files. Notification ManagerEnables all apps to display custom alerts in the status bar. Location ManagerLocation management, using GPS or cell tower. Activity ManagerManages the lifecycle of apps and provides a common navigation back stack. Content ProvidersManage data sharing between appsTelephony Manager Provides APIs for monitoring the basic phone info such as the network type & connection state, plus utilities for manipulating phone number strings. Dalvik Virtual MachineType of JVM used in android devices to run apps and is optimized for low processing power and low memory environments.DVM doesn't run .class files, it runs .dex files instead..dex files are built from .class file at the time of compilation and provides higher efficiency in low resource environments.All apk's basic source code is in Java.When build, .java > .class > (dxtool convert .class to) .classes.dexAndroid Runtime (ART)In Lollipop DVM has been completely replaced by ART.ART has Ahead of Time (AOT) compilation and improved garbage collection which boost the performance of apps significantly.ART improves overall execution efficiency & reduces power consumption results to improved battery autonomy on mobile devices.Native C/C++ LibrariesWritten in C or C++ language and are specific for a particular hardware.Media Framework > provides different media codecs allowing the recording and playback of different media formats.OpenMAX AL > Android native multimedia handling is based on Khronos Group OpenMAX AL 1.0.1 APIOpenGL ES > Used to render 2D or 3D graphics content to the screen.WebKit > browser engine used to display HTML content.Hardware Abstraction Layer (HAL)A layer of programming that allows a computer operating system to interact with a hardware device at a general or abstract level rather than at a detailed hardware level.Provides standard interfaces that expose device hardware capabilities to the higher level Java API framework.Linux KernelInteracts with the hardware and contains all the essential hardware drivers.Drivers are programs that control and communicate with the hardware.Also acts as an abstraction layer between hardware and other software layers.اللهم صل على محمد وآل محمد
(Allahumma salli 'ala Muhammad wa ali Muhammad)سُبْحَانَ اللّهِ وَ بِحَمْدِهِ ، سُبْحَانَ اللّهِ الْعَظِيمِ
(SubhanAllahi wa biHamdihi, SubhanAllahil adzim)
سبحانك اللهم وبحمدك أشهد ان لا إله إلا أنت أستغفرك وآتوب إليك
(Subhanakallahumma wabihamdika asyhadu allaailaaha illa anta astaghfiruka wa atuubu ilaika)
Artikel ini hanyalah simpanan cache dari url asal penulis yang berkebarangkalian sudah terlalu lama atau sudah dibuang :
https://www.mohdnoorshawal.com/2020/05/notes-introduction-to-android.html