全志a20设置默认ip

    xiaoxiao2023-03-24  3

    android 默认的配置和一般存在这两个地方

    frameworks/base/core/res/res/values/config.xml frameworks/base/packages/SettingsProvider/res/values/defaults.xml
    但是a20有点奇怪,它的第二个设置文件是在这个地方

    device\softwinner\wing-clover\overlay\frameworks\base\packages\SettingsProvider\res\values\defaults.xml(下面是修改这个文件)
    设置默认ip主要修改这两个地方
    1. defaults.xml(这个必需修改,最终调用的是这个) 修改 <bool name="def_ethernet_on">true</bool><!--false--> <bool name="def_ethernet_mode">false</bool><!--false--> 添加  <string name="def_ethernet_ip" translatable="false">192.168.1.100</string> <string name="def_ethernet_mask" translatable="false">255.255.255.0</string> <string name="def_ethernet_gw" translatable="false">192.168.1.1</string> <string name="def_ethernet_dns" translatable="false">8.8.8.8</string> <add-resource type="string" name="def_ethernet_ifname" /> <string name="def_ethernet_ifname" translatable="false">eth0</string> <add-resource type="bool" name="def_ethernet_conf" /> <bool name="def_ethernet_conf">true</bool> 2. 修改frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java   -->
    private void loadSecureSettings(SQLiteDatabase db) {  //此函数是在android 第一次起动时加载的xml默认配置
    ......
    loadStringSetting( stmt, Settings.Secure.ETHERNET_IFNAME,                     R.string.def_ethernet_ifname ); loadStringSetting( stmt, Settings.Secure.ETHERNET_IP,                     R.string.def_ethernet_ip ); loadStringSetting( stmt, Settings.Secure.ETHERNET_MASK,                     R.string.def_ethernet_mask ); loadStringSetting( stmt, Settings.Secure.ETHERNET_ROUTE,                     R.string.def_ethernet_gw ); loadStringSetting( stmt, Settings.Secure.ETHERNET_DNS,                     R.string.def_ethernet_dns ); loadBooleanSetting(stmt, Settings.Secure.ETHERNET_CONF,                     R.bool.def_ethernet_conf);
    ......
    }
    Settings.Secure.ETHERNET_IFNAME 等字段 是在 frameworks\base\core\java\android\provider\Settings.java  中已经有的定义 如下
    /**          * Ethernet related configurations          */         public static final String ETHERNET_ON      = "eth_on";         public static final String ETHERNET_MODE    = "eth_mode";         public static final String ETHERNET_IP      = "eth_ip";         public static final String ETHERNET_MASK    = "eth_netmask";         public static final String ETHERNET_DNS     = "eth_dns";         public static final String ETHERNET_ROUTE   = "eth_route";         public static final String ETHERNET_CONF    = "eth_conf";         public static final String ETHERNET_IFNAME  = "eth_ifname";
    修改的地方很少,但是摸索的过程好艰难,这种修改默认配置的方法同样适用于其它项的配置
    转载请注明原文地址: https://ju.6miu.com/read-1200924.html
    最新回复(0)