Android 12 带GMS的项目wifi热点名称被mainline掉了
如果要修改热点名称可以参考如下两种方法
1. 使用RRO overlay
google介绍文档Wi-Fi ?|? Android 开源项目 ?|? Android Open Source Project
修改方法就是创建个RRO覆盖,但是这种改法显示的热点后面会默认带数字,例如Android_1234
您可以通过使用 RRO 替换默认配置来自定义 Wi-Fi 模块。如需查看可叠加配置的列表,请参阅?frameworks/opt/net/wifi/service/res/values/overlayable.xml 。如需了解配置行为详情,请参阅?frameworks/opt/net/wifi/service/res/values/config.xml 。如需查看叠加层应用示例,请参阅?device/google/coral/rro_overlays/WifiOverlay/ 。
由于?device/google/coral/rro_overlays/WifiOverlay/AndroidManifest.xml ?文件将?targetPackage ?属性设置为?com.android.wifi.resources ,并且 Wi-Fi 模块传递的资源 APK 的软件包名称为?com.google.android.wifi.resources ,因此您必须将叠加层 APK 的?targetPackage ?设置为?com.google.android.wifi.resources ,才能成功叠加 Wi-Fi 配置。
vendor/mediatek/proprietary/packages?/?overlay/vendor/WifiResOverlay/AndroidManifest.xml
diff --git a/WifiResOverlay/AndroidManifest.xml b/WifiResOverlay/AndroidManifest.xml
index 5c611ad..4532038 100644
--- a/WifiResOverlay/AndroidManifest.xml
+++ b/WifiResOverlay/AndroidManifest.xml
@@ -17,13 +17,13 @@
<!-- Simple app to demonstrate how OEM's can customize the various overlays exposed by
the wifi stack -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.android.wifi.resources.overlay"
+ package="com.mediatek.wifi.resources.overlay"
android:versionCode="1"
android:versionName="1.0">
<application android:hasCode="false" />
<overlay
- android:targetPackage="com.android.wifi.resources"
+ android:targetPackage="com.google.android.wifi.resources"
android:targetName="WifiCustomization"
android:isStatic="true"
- android:priority="0"/>
+ android:priority="10"/>
</manifest>
diff --git a/WifiResOverlay/res/values/config.xml b/WifiResOverlay/res/values/config.xml
index 32355fa..f5dd0f4 100644
--- a/WifiResOverlay/res/values/config.xml
+++ b/WifiResOverlay/res/values/config.xml
@@ -19,6 +19,8 @@
<!-- Overrides the default value of the specified config values when this sample app is installed -->
<resources>
+ <string name="wifi_tether_configure_ssid_default" translatable="false">ywysh tom</string>
第二种方法
在MtkSettings里添加个Receiver接收开机广播
首次开机的时候直接重新设置热点名称
WifiManager mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
final SoftApConfiguration config = mWifiManager.getSoftApConfiguration();
String mSSID = SystemProperties.get("ro.product.model");
mWifiManager.setSoftApConfiguration(
new SoftApConfiguration.Builder(config).setSsid(mSSID).build());
PS:
可以两种方法配合使用,以免重置网络或者设置等情况reset掉配置
|