多台手机共享一台手机的移动网络,怎么操作

Android---添加一个共享操作
在你的ActionBar中实现一个有效的且对用户友好的共享操作,甚至比在4.0(API Level 14)中引入的ActionProvider更加容易。ActionProvider一旦跟操作栏中的一个菜单项绑定,该菜单项会处理的外观和行为。在ShareActionProvider中,你提供一个共享的Intent对象,其他事情都会由ShareActionProvider来处理。
注意:ShareActionProvider在API Level 14以后有效。
更新菜单声明
要使用ShareActionProviders,就在你菜单资源文件中给对应的&item&元素定义android.actionProviderClass属性:
&menuxmlns:android=&/apk/res/android&&
&&& &item android:id=&@+id/menu_item_share&
&&&&&&& android:showAsAction=&ifRoom&
&&&&&&& android:title=&Share&
&&&&&&& android:actionProviderClass=&android.widget.ShareActionProvider& /&
这种委托负责该菜单项的外观和功能。但是你需要告诉该提供器你要共享的内容。
图1.图库(Gallery)应用中的ShareActionProvider。
设置共享的Intent对象
为了让ShareActionProvider指向一个功能,你必须给他提供一个共享的Intent对象。这个共享的Intent对象应该跟&把内容发送给其他应用程序&一课中介绍的相同,它带有ACTION_SEND操作,以及通过EXTRA_TEXT和EXTRA_STREAM附加属性设置的额外数据。要跟一个共享的Intent对象相关联,首先要找到你的Activity或Fragment对象填充菜单时多对应的MenuItem对象。接下来调用MenuItem.getActionProvider()方法来获取一个ShareActionProvider对象实例。使用setShareIntent()方法来更行跟操作项关联的共享的Intent对象。例如:
privateShareActionProvider mShareActionP
public boolean onCreateOptionsMenu(Menu menu) {
&&& // Inflate menu resource file.
&&& getMenuInflater().inflate(R.menu.share_menu, menu);
&&& // Locate MenuItem with ShareActionProvider
&&& MenuItem item = menu.findItem(R.id.menu_item_share);
&&& // Fetch and store ShareActionProvider
&&& mShareActionProvider = (ShareActionProvider) item.getActionProvider();
&&& // Return true to display menu
// Call to update the share intent
private void setShareIntent(Intent shareIntent) {
&&& if (mShareActionProvider != null) {
&&&&&&& mShareActionProvider.setShareIntent(shareIntent);
在你菜单创建期间,你只需设置共享的Intent对象,或者是UI改变时来设置并更新它。例如,当在图库应用中全屏浏览照片时,共享的Intent会在照片间切换时发生变化。
有关ShareActionProvider对象的详细讨论,请看Action Bar指南。厉害了!教你如何在手机连上WiFi时仍然使用移动网络
近日,京东以服务质量倒数第一为由,封杀了天天快递,并通知商家称:建议于7月底之前与服务质量好的京东物流、顺丰、中通、韵达、申通合作。对此,收购了天天快递的苏宁物流称:苏宁快递表示开放共享是行业大势,京东封杀快递公司的目的就是保护自己的物流。随后京东予以反击称:被苏宁收购后天天的加盟网点也是“炙手可热”,但至今并未派送过苏宁的订单,因为苏宁的家电属于高价货,而第三方快递高值货丢失时有发生。
本篇来自 Trilen 的投稿,分享了多网络环境下使用指定网络连接服务器技术,希望对大家有所帮助!
Trilen的博客地址:
http://blog.csdn.net/u
这个功能如标题所述:在 wifi 和 移动数据网络 同时开启之下,在 Android5.0之前 系统并没有很好地提供这样的 api 来实现这样的功能。现在需要 wifi 开着的情况下,强制通过 移动数据网络 发送网络请求,可能会觉得哪会有这样的蛋疼需求,认为只要能访问就行了,还要特地移动网络,那我只能讲你们的业务发展中没有这样的需求。好了废话不多说,实现如下:
Wifi下指定移动网络访问服务端
首先注意权限申请,需要如下权限才能切换:
&uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/&
&uses-permission android:name="android.permission.WRITE_SETTINGS"/&
builder.addCapability(NET_CAPABILITY_INTERNET);
//强制使用蜂窝数据网络-移动数据
builder.addTransportType(TRANSPORT_CELLULAR);
通过配置 TransportType 参数 TRANSPORT_CELLULAR 来指定移动网络,其值可以为 int 有如下几种:分别为 移动数据网络、wifi、蓝牙、以太网、Vpn 5种传输通道。这时就不论当前手机有多少网络是处于连接中,都可以指定单个。
上文中 addCapability(NET_CAPABILITY_INTERNET) 其参数配置也是固定范围可选的,不能乱配,共有19个参数可配:
其中有默认如下配置能力,故若要访问网络需要加上 NET_CAPABILITY_INTERNET
在 connectivityManager.requestNetwork 请求之后如果此次netWork是可以使用的,就会回调 ConnectivityManager.NetworkCallback中onAvailable(Network network) 函数,这时候利用返回的 Network 来进行http连接了 network.openConnection(url)。其源码如下:
可以看到 connectivityManager.requestNetwork()
requestNetwork(NetworkRequestrequest, NetworkCallbacknetworkCallback)
sendRequestForNetwork(request.networkCapabilities,networkCallback, timeoutMs, REQUEST,legacyType)
来实现请求,其源码可以看到 requestNetwork 的请求类型是 REQUEST,继而走到:
最后是通过 mService 这个是 aidl 进程通信的 IConnectivityManager.Sub 内部类 prox代理对象,通过 binder 机制通知远端进行 requestNetwork 方法。
最后不要忘记了注销监听 NetworkCallback:
mConnectivityManager.unregisterNetworkCallback(networkCallback);适配问题
介绍使用以及原理就是这么多了,但是并不会实际中并不会就那么完美,首先想到就是适配情况
适配机型问题
在多个品牌手机中oppo,小米,魅族几个机型中发现可用能够实现这个功能,但在华为p系列p7以及荣耀手机中可以在回调中 onAvailable(Network network) 正常返回 Network,也能进行连接,但读取网络结果时就一直出现超时。
解决办法:先检查是否有权限,特别注意oppo手机 wifi 第一次用户安装登录默认是没有数据网络权限的,所以总会导致接口访问失败超时,需要用户切换到移动数据网络连接状态下,让用户授权。
若权限存在的话,可以用下面提到的 startUsingNetworkFeature 低版本的兼容方法尝试,目前自测是可以的。区别在于这个不使用 NetWork,直接在打开的移动网络中进行连接访问。
适配低版本
上述也提到在5.0之前要实现这样的功能呢,在低版本中可以使用 startUsingNetworkFeature(int networkType, String feature) 这个被抛弃方法实现,其实和上述实现原理差不多,只是使用起来性能以及效率问题,这个 老Api 在某些机型上不能立即采用移动网络进行请求,需要等待些时间重试。
继续看 requestNetworkForFeatureLocked(netCap) 实现
可以看到最终也走到 sendRequestForNetwork(netCap, l.networkCallback, 0,REQUEST, type) 这个方法和5.0之后的 requestNetwork(NetworkRequest request, NetworkCallback networkCallback) 是一个效果。
甚至有人可能会想到先断开wifi,再通过移动网络来访问,如下:
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
今日搜狐热点一台手机如何用两个移动的号码(其中一个专门用来上网的)呢?
這?雍孟袷遣豢赡艿?
其他答案(共5个回答)
厅有人会告诉我们的。
根据你网络的运营商,如果都是移动的卡,那么现实的ip就是一样的。如果是不同的运营商,显示的IP号码会不同。
猛龙祝你天天好心情!
天翼的只能用电信卡吧 你可以试下卡1用电信卡
卡2用移动卡
移动公司推出的甜言蜜语包10元可享受2个移动号码之间包1000分钟+500条短信的优惠.若是两个号码不在一个城市,10元可享受2个移动号码之间包1000分钟
建议把手机卡取出来,放到外面一星期,再查话费,看看还扣吗,要是不扣手机吃费。发,看看有什么业务,不想要的用笔记下来,打人工台告诉他取消,最后...
比如你的手机是A,你转移到了B电话上,电话C打你。
C按照打A的资费收取,A支付呼叫转移费1到3毛每分钟(具体各地不一样,联通一般1毛,移动2到3...
双卡双待分为2种,正规的双卡双待是手机内放入两张手机卡,开启双待机服务后,2个手机号能够任意接听电话,如果是单项卡那么都不收取费用,设置的主卡为打电话的手机号;...
ip地址不是绑定手机硬件的,只是与手机号码有关,就像智能手机的手机来电显示的号码归属地一样。
电信CTWAP和CTNET有点类似中国移动的
CMWAP 和 CMNET 只是中国移动人为划分的两个GPRS接入方式。前者是为手机WAP上网而设立的,后者则主要...
后4位是用户顺序号,没有意义,按安装顺序随机分配的。前4位(7位号码的前3位)是电信局交换局代号,一个交换局区域里面的都一样。
电信局有一台很多端口的设备,其...
(亲 又碰到您的问题了 还是那个答案 拜托都点上好评哦)
一台手机的微信软件只能支持一个账号登陆。 当然是可以自由切换的 《赠人玫瑰手有余香,祝您好运一生一世,...
如何验证邮箱,据说是有点优惠
数码变焦只是单纯的放大 不能保证清晰
它的工作方式类似于我们在电脑中将图像的某一部分进行放大,不同的是“数码变焦”是在拍摄过程中直接在CCD上完成...
答: 风险当然是有的,谁也不能保证.
不过,劝你千万不要在小网买东西.
最好在卓越,当当和淘宝之类的.
付款方式最好选择"货到付款",用网上银行有点危险!
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区
相关问答:123456789101112131415

我要回帖

更多关于 中国移动299元手机 的文章

 

随机推荐