关于 Android 进程的简介

欢迎Follow我的GitHub: https://github.com/SpikeKing

本文的合集已经编著成书,高级Android开发强化实战,欢迎各位读友的建议和指导。在京东即可购买:https://item.jd.com/12385680.html

Book

在Android系统中, 进程非常重要, 除了主进程运行App, 我们还可以使用其他进程处理独立任务.

进程, 即Process. 进程间通信, 即IPC(Inter-Process Communication).

在Android中, 使用多进程只有一种方式, 在AndroidManifest中, 为四大组件(Activity, Service, Receiver, ContentProvider)指定android:process属性.

<service
    android:name=".PedometerCounterService"
    android:exported="false"
    android:process=":cy_pedometer_set"/>

exported="false"表示只与本应用内的进程通信, 即包名相同.

默认进程的进程名是包名.

➜  ~ adb shell ps | grep wangchenlong.chunyu.me.android_pedometer_set
u0_a354   28490 410   2259024 80272 ffffffff 00000000 S wangchenlong.chunyu.me.android_pedometer_set
u0_a354   28515 410   2191112 60080 ffffffff 00000000 S wangchenlong.chunyu.me.android_pedometer_set:cy_pedometer_set

进程ID是2849028515. 父进程ID是410. ps -help显示标题.

使用":"表示私有进程, 其他组件不能使用; 使用全称表示全局进程, 其他组件可以使用ShareUID共享进程.

多进程无法通过内存共享数据. 可以通过Intent传递数据.

不同进程的组件会拥有独立的虚拟机, Application, 内存空间.

多个进程, Application会创建多次.

SerializableParcelable接口处理对象序列化过程. 使用ObjectOutputStreamObjectInputStream处理对象的Serializable序列化与反序列化.

Intent可以使用SerializableParcelable接口传递复杂对象数据, 参与进程间的通信.

OK, that’s all! Enjoy it!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ElminsterAumar

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值