最近在更新之前的一些java代码到kotlin去,然后把本来的NetReciever更新为kotlin版别,然后as给了我以下的过失:
wtf?这是什java模拟器么情况,仔细把提示的文github是干什么的字阅读一遍。。。
本来CONNECTIVITY_ACTIkotlin发音ON
现已过Java期,这儿官方举荐运用 requestNetwork
,registerNetworkCallback
or registerDgithub怎样下载文件efaultNetworkCallback
来替换原有的Broakotlin言语dcastRecgitlabiever计划,既然如此,就查验来改造一番。
首要根据不同github永久回家地址的版别区分不同的监听计划
主办法
//网络改动监听器 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP){ mConnectivityManager = gekotlin现在不火了tgithup官网SystemService(CONNECTIVITY_SERVICE) as Connkotlin现在不火了ectivityManagergithub怎样下载文件 val networkCallbackImpl = NetworkCallbackImpl() mCjava面试题onnectivityManager.requestNetwork(NetworkRequest.Builder().build()github是干什么的,networkCallbackImpl) }else{ networkReceiver = NegithubtWorkReciever() val netFilter = IntentFilter() nejavascripttFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION) registerReceiver(networkReceiver,netFilter) }
Nandroid下载安装etworkCallbackImpl
@RequiresApi(Build.VERSION_CODES.LOLLIPOP) class NetworkCallbackImpl: ConnectivityManager.NetworkCallback() { val TAG = "NetworkCallbackImpl" override fgit教程un onAvailable(network: Network) { super.onAvailable(network) Log.i(TAG,"网络已链接") } override fun onLost(network: Network) { super.onLost(network) Log.i(TAG,"网络已断开") } override fun onCapabilitiesChanged(network: Network, netwojava初学rkCapabilities: NetworkCapabilities) { sgithub中文官网网页uper.onCapabilitiesChanandroid电子市场ged(network, networkCapabilities) if (neGittjava工作培训班workCapabilities.hasCapability(NetworkCapabilandroid的drawable类itigithub是干什么的es.NET_CAPABILITY_VALIDATED)) { when { //Wandroid下载IFFI networkCapabilities.handroid是什么手机牌子asTgithubransport(NetworkCapabilities.TRANSPORT_WIFI) -> { Log.i(TAG,"wifi现已联接") } //数据流量 networkCapabilitijava环境变量配置es.hasTrgithub怎样下载文件ansgithub永久回家地址port(NetworkCapabilities.TRANSPORT_CELLULAR) ->github中文官网网页; { Log.i(TAG,"数据流量现已联接") } else -> { Log.github打不开i(TAG,"其他网络") } } } } }
然后补偿一下本来NeGitHubtWorkReciever
的代码
class NetWorkReciAndroidever:BroadcastReceivergithub中文社区() { companion object{ const val TAG = "NetWork" } override fun onReceive(context: Context?, intent: Ingithub怎样下载文件tent?) { if(ConnectivityManager.CONNECTIVITY_ACTION==intent?.action){ //网络改动 Logjava工作培训班.i(TAG,"NETWORK_CHANGE") val connectiandroid下载vityManager = context?.gandroid是什么手机牌子etSystemService(CONNECTIVITY_SERVICE) as Connectivitjava开发yManager val info = connectiandroid是什么手机牌子vityManager.activeNetworkInfo if (info != null && info.isConnected) {java言语 vagithub是干什么的l type = info.type Log.i(TAG,"network isconnected ,typjava模拟器e is $type") } else { Log.i(TAG,"network disconnected ,type is -1") } } } }
这儿要增加两个权限到AndroidManifest.xml
下
<uses-permkotlin为什么盛行不起来ission android:name=javascript"android.Gitpermission.CHANGEjava怎样读_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
再注册一下NetWorkReciever
<receiver android:name=".reciever.NetWorkReciever">
<intent-filter>
<action android:giti轮胎是什么品牌name="android.ingit教程tent.action.CONNECTIVITY_CHANGE"/&gandroid电子市场t;
</intent-filter>
最终工作作用
代码地址:github.com/jiaoery/MyA…(也有github是干什么的一github开放私库些其他的代GitHub码学习记载)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)