【展讯】关于卡的数据网络连接
来源:互联网 发布:c语言中的链表 编辑:程序博客网 时间:2024/05/23 20:00
工程模式下,输入暗骂“*983*123#”后,重启手机sim卡的数据网络连接(双卡单通)
展讯平台:
packages\apps\Dialer\src\com\android\dialer\SpecialCharSequenceMgr.java中添加。
///ZTE SR-ENGINEERMODE-0690 网络重启 restart network data - add begin private static final String MMI_RESTART_NETWORKDATA_DISPLAY = "*983*123#"; static boolean handleRestartNetworkDataDisplay(Context context, String input, boolean useSystemWindow) { android.util.Log.d("zdqddd", "SpecialCharSequenceMgr.java-->handleRestartNetworkDataDisplay()==input="+input); if(input.equals(MMI_RESTART_NETWORKDATA_DISPLAY)) { restartNetworkDataDisplay(context, useSystemWindow); return true; } return false; } static void restartNetworkDataDisplay(Context context, boolean useSystemWindow) { final int simId = Settings.System.getInt(context.getContentResolver(), Settings.System.MULTI_SIM_DATA_CALL, SprdPhoneSupport.getDefaultPhoneId()); android.util.Log.d("zdqddd", "SpecialCharSequenceMgr.java-->restartNetworkDataDisplay()==start=="); android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] simId="+simId); int phoneId = TelephonyManager.getDefaultDataPhoneId(context); android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] phoneId="+phoneId); final ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); final SimManager mSimManager = SimManager.get(context); android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] SimManager="+mSimManager); new AsyncTask<Void, Void, Boolean>() {@Overrideprotected Boolean doInBackground(Void... arg0) {// TODO Auto-generated method stub//如果数据连接是打开的,则先关闭boolean enabled = cm.getMobileDataEnabledByPhoneId(simId);android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] enabled="+enabled);if(enabled) {cm.setMobileDataEnabledByPhoneId(simId, false);}/*if(simId >= 0) {cm.setMobileDataEnabled(false);}*/return null;}@Overrideprotected void onPostExecute(Boolean result) {// TODO Auto-generated method stubif(TelephonyManager.isMultiSim()) {//双卡android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] double ==================");//数据连接一开始是打开的,关闭后,再打开相应的卡槽sim卡的数据连接/*if(mSimManager == null) {return;}Sim mSims[] = mSimManager.getSims();//卡信息int simLen = mSims.length;android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] simLen="+simLen);for(int i=0;i<simLen;i++) {android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] mSims["+i+"]="+mSims[i]);}*/cm.setMobileDataEnabledByPhoneId(simId, true);} else {//打开android.util.Log.d("zdqddd", "[restartNetworkDataDisplay] single ==================");cm.setMobileDataEnabled(true);}super.onPostExecute(result);} }.execute(); android.util.Log.d("zdqddd", "SpecialCharSequenceMgr.java-->restartNetworkDataDisplay()==end=="); } ///ZTE SR-ENGINEERMODE-0690 restart network data -zhengdongqin add end
相关类:android.sim.Sim; android.sim.SimManager; android.telephony.TelephonyManager; android.telephony.SprdPhoneSupport; android.net.ConnectivityManager;
MTK平台KK:
import android.os.AsyncTask;import android.provider.Telephony.SIMInfo;import android.net.ConnectivityManager;import com.mediatek.common.featureoption.FeatureOption;// kk版本,simId是从1开始累加的,如先插入移动卡,然后拔掉在插入联通卡,则移动卡的simId是1// 联通卡的simId是2,如果再插入另外一张sim卡,则simId是3final long simId = Settings.System.getLong(SoundRecorder.this.getContentResolver(),Settings.System.GPRS_CONNECTION_SIM_SETTING, Settings.System.DEFAULT_SIM_NOT_SET); new AsyncTask<Void, Void, Boolean>() {@Overrideprotected Boolean doInBackground(Void... arg0) {// TODO Auto-generated method stubConnectivityManager cm =(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);// 若数据连接是打开的,则先关闭if(simId > 0) { //如果数据连接关闭,则Settings.System.DEFAULT_SIM_NOT_SET值为-1cm.setMobileDataEnabled(false);}return null;}@Overrideprotected void onPostExecute(Boolean result) {// TODO Auto-generated method stubConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);if(FeatureOption.MTK_GEMINI_SUPPORT) { // 双卡// 若数据连接一开始是打开的,关闭后,再打开相应的卡槽sim卡if(simId > 0) {SIMInfo simInfo = SIMInfo.getSIMInfoById(SoundRecorder.this, simId);if(simInfo != null){int slotId = simInfo.mSlot;boolean isEnable = cm.getMobileDataEnabledGemini(slotId);android.util.Log.d("yangjunddd", "isEnable =" + isEnable);cm.setMobileDataEnabledGemini(slotId);}} else { // 若数据连接是关闭的,则打开卡槽1的sim卡cm.setMobileDataEnabled(true);}} else {// 单卡cm.setMobileDataEnabled(true);}<span style="white-space:pre"></span>super.onPostExecute(result);}.execute();
0 0
- 【展讯】关于卡的数据网络连接
- 关于数据的连接
- 关于网络连接的类型
- 连接数据的网络交互
- android 关于网络连接之传输数据节省电量1
- android 关于网络连接之传输数据节省电量2
- 学习ubuntu的笔记--关于网络连接
- 关于网络连接错误信息678的解决方法
- android 关于连接到网络的知识
- 一.关于Vmware的网络连接
- 关于Android的网络连接ConnectivityManager
- 关于网络连接Network的使用
- 关于Chrome无法连接网络的问题解决
- 【Android 网络】关于android 网络连接状态的一些代码
- 关于Reachability网络连接
- 网络数据连接数据库
- 8.25 关于数据连接的一些笔记
- 关于网络数据安全的处理
- 如何使用Git实现跨SVN管理
- 电感量的计算
- iOS armv7,armv7s, arm64
- libevent evconnlistener_new() 创建监听器函数
- JVM的分代
- 【展讯】关于卡的数据网络连接
- 针对全字母或全数字不换行的处理
- 国内邮箱收取Gmail的方法【以163邮箱为例】
- 输入和输出--java的NIO
- [Java Web]Error parsing HTTP request header Note: further occurrences of HTTP header parsing errors
- 请编写一个函数,删除一个字符串的一部分。
- 关于Ubuntu配置文件apache2 httpd.conf 位置
- 将大文件按照首字母分割到不同的小文件中 实现取第二个[]中间的内容进行分割
- 腾讯程序员笔试题及答案