--- a/frameworks/opt/net/ethernet/java/com/android/server/ethernet/EthernetNetworkFactory.java+++ b/frameworks/opt/net/ethernet/java/com/android/server/ethernet/EthernetNetworkFactory.java@@ -47,6 +47,7 @@ import android.os.Looper; import android.os.RemoteCallbackList; import android.os.RemoteException; import android.os.ServiceManager;+import android.os.SystemProperties; import android.text.TextUtils; import android.util.Log; import android.content.Intent;@@ -94,6 +95,7 @@ class EthernetNetworkFactory {     private static final String NETWORK_TYPE = "Ethernet";     private static final String TAG = "EthernetNetworkFactory";     private static final int NETWORK_SCORE = 70;+       private static final int NETWORK_SCORE_SHARE = 30;     private static final boolean DBG = true;      /** Tracks interface changes. Called from NetworkManagementService. */@@ -260,9 +262,16 @@ class EthernetNetworkFactory {             // set our score lower than any network could go             // so we get dropped.  TODO - just unregister the factory             // when link goes down.-            mFactory.setScoreFilter(up ? NETWORK_SCORE : -1);+            mFactory.setScoreFilter(up ? getNetworkScore() : -1);         }     }+       +       private int getNetworkScore() {+               if ("1".equals(SystemProperties.get("persist.tchip.iproute")))+                       return NETWORK_SCORE_SHARE;+               else+                       return NETWORK_SCORE;+       }      // first disconnect, then connect     public void reconnect(String iface) {@@ -429,7 +438,7 @@ class EthernetNetworkFactory {             mNetworkAgent.sendNetworkInfo(mNetworkInfo);             mNetworkAgent.sendLinkProperties(mLinkProperties);             // never set the network score below 0.-            mNetworkAgent.sendNetworkScore(mLinkUp? NETWORK_SCORE : 0);+            mNetworkAgent.sendNetworkScore(mLinkUp? getNetworkScore() : 0);         }     }    @@ -585,7 +594,7 @@ class EthernetNetworkFactory {                     // Create our NetworkAgent.                     mNetworkAgent = new NetworkAgent(mFactory.getLooper(), mContext,                             NETWORK_TYPE, mNetworkInfo, mNetworkCapabilities, mLinkProperties,-                            NETWORK_SCORE) {+                            getNetworkScore()) {                         public void unwanted() {                             synchronized(EthernetNetworkFactory.this) {                                 if (this == mNetworkAgent) {

更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. android之浮动title
  2. Android(安卓)开发资料汇总
  3. Android中遇到的一切BUG(到目前为止,这是
  4. Android开源图表库XCL-Charts版本号公布
  5. android本地化和国际化
  6. Android(安卓)studio异常记录
  7. Android: 获取当前线程状态
  8. Mac 进行 android 真机调试
  9. android给图片添加边框
  10. Android(安卓)DownloadManager的用法