Analyze the existing logs and see from the crash dump logs that the error is reported by the systemui module, the specific error logs are as follows:
Cmdline: com.android.systemui
pid: 3329, tid: 3329, name: ndroid.systemui >>> com.android.systemui <<<
The summary in the log shows that the BinderDeathTracker of the BinderCacheManager was referenced 50133 times, and some of the other references combined exceeded the 51200 limit.
Summary:
50113 of android.telephony.BinderCacheManager$BinderDeathTracker (50113 unique instances)
adb log has a log printed frequently and found the isVowifiAvailable() method in MobileSignalController.java under the systemui module.
39645766 20.08.2022 23:15:03.992 Main 3329 3446 LogcatInfo NetworkController.MobileSignalController(1) isVowifiAvailable,mVoWiFiSettingEnabled = falsemMMtelVowifi = false
In the isVowifiAvailable() method, the BinderCacheManager is retrieved and the getBinder() method is called. getBinder() then initializes the BinderDeathTracker. isVowifiAvailable() method in MobileSignalController will be called frequently, causing the reference to BinderDeathTracker to slowly exceed the limit.
Before Modified:
try {
final ImsMmTelManager imsMmTelManager =
ImsMmTelManager.createForSubscriptionId(activeDataSubId);
// From CarrierConfig Settings
mVoWiFiSettingEnabled = imsMmTelManager.isVoWiFiSettingEnabled();
} catch (IllegalArgumentException exception) {
Log.w(mTag, "fail to get Wfc settings. subId=" + activeDataSubId, exception);
}
Modified:
ImsMmTelManager imsMmTelManager;
try {
imsMmTelManager =
ImsMmTelManager.createForSubscriptionId(activeDataSubId);
// From CarrierConfig Settings
mVoWiFiSettingEnabled = imsMmTelManager.isVoWiFiSettingEnabled();
} catch (IllegalArgumentException exception) {
Log.w(mTag, "fail to get Wfc settings. subId=" + activeDataSubId, exception);
} finaly {
imsMmTelManager = null;
}
Solution: Because this is a local variable, set it to a null value in time after use, and no longer reference the ImsMmTelManager.
Experience: You can view some repeated logs in the adb log, and check whether the code near the log directly or indirectly calls the classes or methods displayed in the Summary.




two point three Modify the universal aggregate script file






, open the server manager, click “add roles or functions”
next
next
next
do not need to operate here, directly next
check Framework 3.5 here, and then next
click specify alternate source path option
A289885427 here you need to fill in the alternate source path
open the mounted system image, enter the specified location, copy the path
fill in the alternate source path, confirm, and then click Install
to start the installation, wait for the installation to complete
to finish the installation, and then close VMware. 