在通过PackageManager获取activities火者其他四大组件信息时,经常会遇到TransactionTooLargeException等异常,其原因是Android对Binder传输进行了限制:
1、同一进程binder所传输数据总量大小限制:1MB
2、在Android 6和Android 7上面,又进行了更加严格的限制,binder单次传输数据大小限制:200KB
因此,建议采用精确查询替代遍历查询,从而降低Binder的数据传输量,同时提高查询速度。
在通过PackageManager获取activities火者其他四大组件信息时,经常会遇到TransactionTooLargeException等异常,其原因是Android对Binder传输进行了限制:
1、同一进程binder所传输数据总量大小限制:1MB
2、在Android 6和Android 7上面,又进行了更加严格的限制,binder单次传输数据大小限制:200KB
因此,建议采用精确查询替代遍历查询,从而降低Binder的数据传输量,同时提高查询速度。