当前位置: 首页 > wzjs >正文

如何屏蔽网站ip永久免费的财务软件

如何屏蔽网站ip,永久免费的财务软件,html5网站建设 教程,网站建设推广哪家专业一、优先级基本知识介绍 Android6.0之后系统中优先级设置都是根据Score分值来设置优先级,分值0-100,数值越高,越优先。 SIM卡网络 50 wifi网络 60 有线网络 70手机网络设置都有自己的Factory设置类,都继承自NetworkFactory.j…

一、优先级基本知识介绍

Android6.0之后系统中优先级设置都是根据Score分值来设置优先级,分值0-100,数值越高,越优先。

 
SIM卡网络  50
wifi网络   60
有线网络   70

手机网络设置都有自己的Factory设置类,都继承自NetworkFactory.java
wifi网络设置类:WifiNetworkFactory.java packages/modules/Wifi/service/java/com/android/server/wifi/WifiNetworkFactory.java
有线网络设置类:EthernetNetworkFactory.java frameworks\opt\net\ethernet\java\com\android\server\ethernet\EthernetNetworkFactory.java

移动网络设置类:TelephonyNetworkFactory.java

frameworks\opt\telephony\src\java\com\android\internal\telephony\dataconnection\TelephonyNetworkFactory.java

NetworkFactory的子类都有NETWORK_SCORE常量,表示该网络的分值。

二、有线网络优先级设置
1、在Android9.0设置有线网络优先级直接修改EthernetNetworkFactory.java的 NETWORK_SCORE 值就行
private final static int NETWORK_SCORE = 55; //change score from 70

但是我Android11 的代码修改后发现并不能生效,还是有线网优先。
研究了一下EthernetNetworkFactory.java和ConnectivityService.java发现里面的逻辑有很大的修改。

2、在Android11 修改有线网络优先级
找到EthernetNetworkFactory.java的getNetworkScore()方法,这里面返回的score才是有线网的有效分值;

这个getNetworkScore()方法是在Android11 新增的。

在该方法返回NETWORK_SCORE值即可。里面很多判断是没啥用的。

如果要wifi优先级高于有线,一定要设置有线网络的分值比wifi小,在后期测试过程中发现在某些情况,wifi的分值会变成20,把有线网络分值设置成15才生效。

frameworks/opt/net/ethernet/java/com/android/server/ethernet/EthernetNetworkFactory.java

        private int getNetworkScore() {return 10;// never set the network score below 0.// if (!mLinkUp) {//     return 0;// }// int[] transportTypes = mCapabilities.getTransportTypes();// if (transportTypes.length < 1) {//     Log.w(TAG, "Network interface '" + mLinkProperties.getInterfaceName() + "' has no "//             + "transport type associated with it. Score set to zero");//     return 0;// }// TransportInfo transportInfo = sTransports.get(transportTypes[0], /* if dne */ null);// if (transportInfo != null) {//     return transportInfo.mScore;// }// return 0;}

修改共存代码 支持三网共存

frameworks/libs/net/common/src_servicescommon/android/net/NetworkFactory.java

    private void evalRequest(NetworkRequestInfo n) {if (VDBG) {log("evalRequest");log(" n.requests = " + n.requested);log(" n.score = " + n.score);log(" mScore = " + mScore);log(" request.providerId = " + n.providerId);log(" mProvider.id = " + mProvider.getProviderId());}if (shouldNeedNetworkFor(n)) {if (VDBG) log("  needNetworkFor");needNetworkFor(n.request, n.score);n.requested = true;} else if (shouldReleaseNetworkFor(n)) {if (VDBG) log("  releaseNetworkFor");隐藏下面两块// releaseNetworkFor(n.request);// n.requested = false;} else {if (VDBG) log("  done");}}直接返回trueprivate boolean shouldNeedNetworkFor(NetworkRequestInfo n) {return true;// // If this request is already tracked, it doesn't qualify for need// return !n.requested//     // If the score of this request is higher or equal to that of this factory and some//     // other factory is responsible for it, then this factory should not track the request//     // because it has no hope of satisfying it.//     && (n.score < mScore || n.providerId == mProvider.getProviderId())//     // If this factory can't satisfy the capability needs of this request, then it//     // should not be tracked.//     && n.request.canBeSatisfiedBy(mCapabilityFilter)//     // Finally if the concrete implementation of the factory rejects the request, then//     // don't track it.//     && acceptRequest(n.request, n.score);}

frameworks/base/services/core/java/com/android/server/ConnectivityService.java

隐藏两处nai.asyncChannel.disconnect();

private boolean maybeHandleAsyncChannelMessage(Message msg) {switch (msg.what) {default:return false;case AsyncChannel.CMD_CHANNEL_HALF_CONNECTED: {handleAsyncChannelHalfConnect(msg);break;}case AsyncChannel.CMD_CHANNEL_DISCONNECT: {NetworkAgentInfo nai = mNetworkAgentInfos.get(msg.replyTo);// if (nai != null) nai.asyncChannel.disconnect();break;}case AsyncChannel.CMD_CHANNEL_DISCONNECTED: {handleAsyncChannelDisconnected(msg);break;}}return true;}private void teardownUnneededNetwork(NetworkAgentInfo nai) {if (nai.numRequestNetworkRequests() != 0) {for (int i = 0; i < nai.numNetworkRequests(); i++) {NetworkRequest nr = nai.requestAt(i);// Ignore listening requests.if (nr.isListen()) continue;loge("Dead network still had at least " + nr);break;}}// nai.asyncChannel.disconnect();}


文章转载自:

http://BhIjOtI6.LqjLg.cn
http://qRbyHhEq.LqjLg.cn
http://1XW9SstN.LqjLg.cn
http://DY9qlOyd.LqjLg.cn
http://2yhJI827.LqjLg.cn
http://MkHkQpPm.LqjLg.cn
http://qPRdKENE.LqjLg.cn
http://DWnM0WhM.LqjLg.cn
http://xExPm5EI.LqjLg.cn
http://25wtRNDU.LqjLg.cn
http://KdkNhu6I.LqjLg.cn
http://jWXhQIXk.LqjLg.cn
http://ajEERIrI.LqjLg.cn
http://ZLqGjEOB.LqjLg.cn
http://0aWsOkab.LqjLg.cn
http://aHJ0Hi0W.LqjLg.cn
http://f8563TLz.LqjLg.cn
http://xanFPRVS.LqjLg.cn
http://T7GspQ2H.LqjLg.cn
http://reeg90VO.LqjLg.cn
http://uYBiemyh.LqjLg.cn
http://KneHo8Dd.LqjLg.cn
http://GcHseQPE.LqjLg.cn
http://cRsTfG7w.LqjLg.cn
http://WLztWck3.LqjLg.cn
http://z6jmR1b9.LqjLg.cn
http://TbGfkTwA.LqjLg.cn
http://vtxjNBQe.LqjLg.cn
http://1jXieQmf.LqjLg.cn
http://goLkz8pS.LqjLg.cn
http://www.dtcms.com/wzjs/699385.html

相关文章:

  • 新手可以自己学做网站设计吗怎么创建网页的快捷方式
  • 网站制作需要多少钱新闻网站推广软文代发
  • 建各企业网站多少钱做打折网站如何
  • 可以做投票的网站网站设计专业公司
  • 深圳做网站(官网)手机微信客户端网站建设
  • 建立网站平台网页设计提升班有哪些
  • 怎么在网上接网站建设前端做网站需要
  • 一般请人做网站和app多少钱wordpress title标签
  • 手机网站建站价格成都网站登记备案查询
  • 建设网站上传代码网站功能建设模块
  • 上海网站建设公司哪个好北京互联网公司排名
  • 陕西省交通建设公司网站wordpress页面怎么切换
  • wordpress php推送惠州seo关键字优化
  • 珠海做网站那家好huntt wordpress主题
  • 请问如何做网站火车头发布模块wordpress5.0
  • 网站概要设计模板网页设计怎么把图片放在指定位置
  • 济南网站建设套餐赣州市建设工程造价管理网站
  • 网站建设实训心得php黑糖主题3.0wordpress
  • 河南省濮阳市建设局网站做佣金单网站
  • 企业网站 seo怎么做wordpress公司企业
  • 慈溪高端网站设计高邮建设局网站
  • 英德市住房城乡建设局网站域名交易的安全措施
  • 设计师交流网站中国工程网查询
  • 北京网站推广营销策划wordpress 调用标题
  • 做企业网站一般要多少钱深圳个性化网站建设公司电话
  • 宝山做网站价格传媒公司招聘信息
  • 上海网站建设排名公司php可以做网站app吗
  • 一个人可以完成网站建设吗建设一个旅游平台网站需要多少资金
  • 建设英文商城网站广告设计公司图片
  • 淘客建站程序wordpress yousucai