Today I saw a good summary from my buddy and I turned around.
Http://blog.csdn.net/breeze_vickie/archive/2011/01/04/6116060.aspx
The android boot process from power on
Since mobile platforms and embedded systems has some differences compared to desktop systems in how they initially start up and boot. this post will discuss the initial boot stages of an Android ph
processes, which can be set in service configuration, Android: Process = ": Remote"
Use of aidl The official documentation reminds us when to use aidl is necessary: Only you allow the client to access your service from different applications for inter-process communication, and want to process multithreading in your
(Packages\apps\phone\src\com\android\phone)Set GSM module status phone.setradiopower (enabled);Wifiservice.javaSet WiFi status setwifienabledblocking (wifienabled, False, Process.myuid ());
GSM Module Switching Process Analysis:
The Phone.setradiopower (enabled) call is:
Functions in File Gsmphone.java:
public void Setradiopower ("Boolean power")
Msst
binder_open () to open the binder device (/dev/binder) and call binder_become_context_manager () to set the current process to servicemanager. Servicemanager is a service.
Int binder_become_context_manager (struct binder_state * BS){Return IOCTL (BS-> FD, binder_set_context_mgr, 0 );}
Finally, binder_loop () enters the cyclic state, and sets the svcmgr_handler callback function to wait for requests such as adding, querying, and obtaining services.
L
occupied by shared libraries)• Pss-proportional set size physical memory actually used (proportional allocation of memory occupied by the Shared Library)• Uss-unique set size physical memory occupied by the process (excluding the memory occupied by the Shared Library)Generally, the memory usage is as follows: VSS> = RSS> = PSS> = USSUSS is the total private memory for a process, I. e. that memory that is c
the WMS proxy object to request WMS to create a Session. This is a remote function call process in the Binder communication mechanism. After calling the openSession function of the WMS proxy object, the openSession function of WMS is implemented as follows: frameworks \ base \ services \ java \ com \ android \ server \ wm \ WindowManagerService. java
public IWi
server are not in the same process (application), the client must have the same copy as the server under the src/directory. aidl file copying (this also means that the package name, class name, and content are identical, and the client's. the aidl file is understood as a proxy), so that the client will use this RemoteWebPage. the aidl file generates the same RemoteWebPage as the server under the gen/object. java file, and then the client can access t
Android is actually an application in the Linux system, the corresponding program is app_process, the program is declared in the init.rc, the Linux startup will start the zygote (app_process) process (the program is implemented by Java code, Run by Dalvik virtual machine, corresponding code in Latest-android-2.3.7_r1\android
:
After completing the preceding operations, import the test file in the res. For example, if my test file is a music.pdf, it must be the same as the layout file.
After the server is completed, write the client thread and test the process communication.
Copy all the pa
Dalvik virtual machines to share code, reduce memory usage, and minimize startup time. Zygote is a virtual machine process, as we mentioned in the previous step, starting at system boot. Zygote pre-load and initialize the core library class. Generally, these core classes are read-only and are part of the Android SDK or core framework. In a Java virtual machine, each instance has its own core library file a
Because the "-- runtime-init" parameter is specified in the previous Step 3, it indicates that the runtime Library is to be initialized for the newly created process. Therefore, the preceding parseArgs. the runtimeInit value is true, so you can continue to execute RuntimeInit. zygoteInit is further processed. Next:
Step 8. RuntimeInit. zygoteInit
This function is defined in the frameworks/base/core/java/com
I've recently seen Lao Luo's blog on the analysis of Android resource management and APK packaging process, referencing other materials, doing some tidying up, leaving out tedious packaging details and data structures, and outlining the entire process of apk packaging as a whole.Process Overview:1, packaging resource files, generate R.java file 2, processing Aidl
the Declaration file: the process attribute specifies a process for it.
Note: The "remote" name is random and subjective. You can use another name to run the service in another process. Colon ':' This prefix will append this name to the name of the standard process running in your package as the new
library classes. These core classes are generally read-only and are part of the Android SDK or core framework. In a Java virtual machine, each instance has its own copy of the core library class file and the heap object.Zygote Loading process
Load Zygoteinit class, source code:/frameworks/base/core/java/com/android
Original URL: http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.htmlAndroid latest NDK R8 under Window development environment installation configuration and use of detailed graphic explanation, complete actual configuration process record (original) always want to engage in the NDK development has been delayed for other things, reference to some online information today finally set up t
Android's latest ndk R8 is used to build, install, configure, and use a detailed graphic explanation in the development environment in the window. The complete configuration process record (original) has been trying to develop ndk, but it has been delaying other tasks, after referring to some online materials, I finally set up the environment and recorded the process and shared it with you. Content director
/core/java/com/android/internal/os/ZygoteInit.java
Registerzygotesocket () registers a server socket for the zygote command connection.
Preloadclassed "Preloaded-classes" is a simple text file containing a series of pre-loaded classes that you can find in
Preloadresources () Preloadresources also means local themes, layouts, and Android. Everything c
.
Step 1. systemserver. Main
public class SystemServer{ ...... native public static void init1(String[] args); public static void main(String[] args) { ...... System.loadLibrary("android_servers"); init1(args); } ......}
This function is defined in the file frameworks/base/services/Java/COM/Android/Server/systemserver. java.
The static member function main of the systems
Video Address: http://study.163.com/course/courseLearn.htm?courseId=712011#/learn/video?lessonId=877122courseId= 712011First, the question:1, how to do an app different process communication?2. Multiple app communication (different apps)3. Inject event run script and invoke hidden APISecond app different process communication:Knowledge Points:1, Intent, binder2.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.