需求:wifi直连导图系统默认接受弹窗

1、android 12修改
源码路径 packages/modules/Wifi/service/java/com/android/server/wifi/p2p/WifiP2pServiceImpl.java

2、android 13 修改
源码路径packages/modules/Wifi/service/java/com/android/server/wifi/p2p/WifiP2pServiceImpl.java
private void showInvitationReceivedDialogPreT() {
- Resources r = mContext.getResources();
+ // Resources r = mContext.getResources();
+ logd(getName() + "ZM auto accept p2p invitation connect" + mSavedPeerConfig);
+ sendMessage(PEER_CONNECTION_USER_ACCEPT);
final WpsInfo wps = mSavedPeerConfig.wps;
final View textEntryView = LayoutInflater.from(mContext).cloneInContext(mContext)
.inflate(R.layout.wifi_p2p_dialog, null);
@@ -5226,7 +5228,7 @@ public class WifiP2pServiceImpl extends IWifiP2pManager.Stub {
if (mVerboseLoggingEnabled) {
logd(getName() + " accept invitation " + mSavedPeerConfig);
}
- sendMessage(PEER_CONNECTION_USER_ACCEPT);
+ // sendMessage(PEER_CONNECTION_USER_ACCEPT);
})
.setNegativeButton(r.getString(R.string.decline), (dialog2, which) -> {
if (mVerboseLoggingEnabled) logd(getName() + " ignore connect");
@@ -5269,7 +5271,7 @@ public class WifiP2pServiceImpl extends IWifiP2pManager.Stub {
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
mLegacyInvitationDialog.getWindow().addSystemFlags(
WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS);
- mLegacyInvitationDialog.show();
+ //mLegacyInvitationDialog.show();
}
3、android 14 修改
源码路径
packages/modules/Wifi/service/java/com/android/server/wifi/p2p/WifiP2pServiceImpl.java
private void showInvitationReceivedDialogPreT() {
// 完全自动接受,不创建任何 UI,不触发 TYPE_SYSTEM_ALERT
if (mVerboseLoggingEnabled) {
logd(getName() + " auto-accept p2p invitation connect " + mSavedPeerConfig);
}
sendMessage(PEER_CONNECTION_USER_ACCEPT);
}
另外一种改法
private void notifyP2pProvDiscShowPinRequest(String pin, String peerAddress) {
ExternalApproverManager.ApproverEntry entry = mExternalApproverManager.get(
MacAddress.fromString(peerAddress));
if (null == entry) {
logd("No approver found for " + peerAddress
+ " check the wildcard address approver.");
entry = mExternalApproverManager.get(MacAddress.BROADCAST_ADDRESS);
}
if (null != entry) {
logd("Received provision discovery request - Send request from "
+ mSavedPeerConfig.deviceAddress + " to the approver " + entry);
Bundle extras = new Bundle();
extras.putParcelable(WifiP2pManager.EXTRA_PARAM_KEY_DEVICE,
mPeers.get(mSavedPeerConfig.deviceAddress));
extras.putParcelable(WifiP2pManager.EXTRA_PARAM_KEY_CONFIG, mSavedPeerConfig);
replyToMessage(entry.getMessage(),
WifiP2pManager.EXTERNAL_APPROVER_CONNECTION_REQUESTED,
WifiP2pManager.ExternalApproverRequestListener.REQUEST_TYPE_NEGOTIATION,
extras);
return;
}
//String deviceName = getDeviceName(peerAddress);
//if (!SdkLevel.isAtLeastT()) {
// showP2pProvDiscShowPinRequestDialogPreT(deviceName, pin);
// } else {
//showP2pProvDiscShowPinRequestDialog(deviceName, pin);
//}
}
4、然后直接通过aosp源码编译验证ROM即可。
转载请注明出处https://blog.youkuaiyun.com/qq_15950325/article/details/155748696,谢谢合作!
Android默认同意WiFi直连弹窗
2042

被折叠的 条评论
为什么被折叠?



