手机联系人姓名或号码过长无法导入到SIM卡

[DESCRIPTION]

1. 手机联系人姓名较长; 
2. 将此联系人复制到sim卡; 
[结果] 提示导入失败 
[期望] 导入成功,自动剪切联系人姓名到合适长度
[SOLUTION]
1. 截取
CopyProcessor.java  (alps\packages\apps\contacts\src\com\mediatek\contacts\list\service)
的copyContactsToSim()方法中的 
    values.put("tag", simTag);   
的前面对simTag进行截取为贵司需要的长度即可。
 
2. 获取不同的SIM/USIM卡可存储姓名(号码)的最大长度
不同的SIM/USIM卡可存储姓名的最大长度有所不同, 贵司可调用以下接口实现:
『4.4 KK之前版本』alps/packages/apps/Phone/src/com/android/phone/PhoneInterfaceManager.java
『4.4 KK』alps/packages/services/telephony/src/com/mediatek/Phone/PhoneInterfaceManagerEx.java
public int[] getAdnStorageInfo(int simId)  

来获取不同的SIM/USIM卡可存储姓名的最大长度. (具体请参看该API实现过程)
------------------------------------------------------------------
使用范例如下:
int sim1id = com.android.internal.telephony.Phone.GEMINI_SIM_1;
int sim2id = com.android.internal.telephony.Phone.GEMINI_SIM_2;
final ITelephony iTel = ITelephony.Stub
               .asInterface(ServiceManager.getService(Context.TELEPHONY_SERVICE));
int [] readinfo;
// readinfo[2] = 0;  // # max length of number
// readinfo[3] = 0;  // # max length of alpha id (name)
try{
    readinfo=  iTel.getAdnStorageInfo(sim1id);
    if (readinfo== null) {
        Log.i(TAG,"readinfo is null");
    } else {
        Log.i(TAG,"----- readinfo[2] = " + readinfo[2] + "readinfo[3] = " + readinfo[3] );
    }
} catch(RemoteException e) {
    Log.i(TAG, "InterruptedException occured") ;
}
-------------------------------------------------------------------------------------------
另外,readinfo[3]一般为13或14,表示可存储姓名的长度为13或14个字节。
 
可以参照(2)中方法将其封装成一个方法,返回可以保存到SIM卡的最大姓名长度,
然后在CopyProcess.java中按照这个返回值的大小进行截取,
号码截取与此类似,需要使用 readinfo[2] 获得的值。 
// readinfo[2] = 0;  // # max length of number

手机联系人姓名或号码过长无法导入到SIM卡相关推荐

  1. android 卡联系人导入iphone,苹果手机怎么把通讯录导入新手机sim卡

    买了新的手机大家都会存在一个疑问到底苹果手机怎么把通讯录导入新手机或者sim卡呢?手机通讯录恢复已经是老生常谈的话题,不过,我们最终的目的还是希望能彻底解决苹果手机通讯录没了怎么恢复.手机通讯录删除后 ...

  2. Android简单获取手机联系人姓名电话号码

    1.手机上联系人数据库文件(contact2.db)存放目录:/data/data/com.android.providers.contacts 2.联系人源码位于工程目录:packages\apps ...

  3. Juniper 210 密码清不掉_手机丢后分分钟被洗劫一空,教你设置 SIM 卡密码 - SIM卡,隐私...

    工信部近日发布了一个重要提醒:用户需要及时设置 SIM 卡密码,丢失手机后要第一时间挂失.为什么工信部突然这么强调这点?这和最近发生的案件有关. 据报道,最近有不法分子偷盗个人手机后,在某政务 APP ...

  4. 修改sim卡号码 android,android 如何动态修改SIM卡应用名称 MT6572 MT6589

    两种方法: 方法1: packages\apps\launcher2\src\com\android\launcher2\PagedViewIcon.java 1:6575.6573.6577平台: ...

  5. 实现对手机联系人列表进行读写操作,并用RecyclerView收缩展开方式展现

    实现对手机联系人列表进行读写操作,并用RecyclerView收缩展开方式展现 在之前做的类微信界面上加了显示手机联系人,姓名,电话,邮箱三项信息的功能,同时可以添加联系人同步到手机联系人记录中,添加 ...

  6. Android SIM卡联系人操作总结

    --- by Ruiming.Lv 在Android中,对SIM中的联系人进行操作,需要通过系统提供的Content Provider进行,该Provider就是Telphony中的IccProvid ...

  7. 读取SIM卡中联系人流程

    本文主要讲USIM卡插入手机后读取卡中contacts信息的流程. 整体流程总结 每次插拔SIM卡都会将联系人数据库中关于SIM卡的联系人删除 SimStateReceiver 通过接收 RIL 上报 ...

  8. iSIM导出SIM卡联系人工具详细使用教程

    <script language='javascript' src='http://www.shiqiaotou.com/donetk/Header.js'></script> ...

  9. 手机SIM卡的详细介绍

    什么是SIM卡 移动话机与SIM卡共同构成移动通信终端设备.无论是GSM系统还是CDMA系统,数字移动电话机用户在"入网"时会得到一张SIM卡(CDMA叫UIM卡).SIM卡是(S ...

最新文章

  1. 使用 Azure CLI 管理 Azure 虚拟网络和 Linux 虚拟机
  2. Java数据结构与算法(一) 数组
  3. 透过率和反射率的关系_光谱仪应用|色彩、透过率等四款测量系统
  4. Android中实现双击屏幕跳转
  5. Validform 学习笔记---基础知识整理
  6. leetcode 376. 摆动序列 思考分析
  7. Unity脚本各种[XXX]的用法
  8. signature=12e3283d637b587235bcb4cbbfa1a5b3,A pathogen-inducible endogenous siRNA in plant immunity
  9. body 没有被撑开_父div没有被撑开,该怎么解决?_html/css_WEB-ITnose
  10. 异常:java.lang.IllegalStateException: No instances found of configserver(里面是一个微服务名)
  11. vim入门教程(简洁有效)
  12. 【Linux/CentOS】上手常见问题笔记
  13. Logisim元件用法详解一:Wiring 线
  14. centos挂载本地镜像作为yum源
  15. ALTREA cyclone IV e系列程序固化方法
  16. oracle 12c 死锁 处理,oracle - PLSQL Oracle 12c死锁,为什么需要对SSX Table锁进行独立删除? - 堆栈内存溢出...
  17. hdu 2665 Kth number(划分树模板)
  18. 21、22、23、53、80、123、161、1433、3306、3389 端口的用途或协议
  19. 怎么申请邮箱?163邮箱如何注册使用?
  20. arduino编码器计数_基于Arduino开发环境的光电编码器检测仪设计方案 - 全文

热门文章

  1. visiting a friend意念传送点
  2. 一个很酷的基于OpenGL + C#的Wince界面开源程序
  3. 一头扎进Shiro 笔记 实现role permission验证
  4. 计算机毕业的人有很多不从事IT行业
  5. antd switch 没有根据数据更新
  6. 如何写网络营销用的成功案例文章
  7. Matlab 2019a
  8. Django简洁留言板系统
  9. 九州计算机入职培训总结,【精华】银行培训心得体会四篇
  10. Excel中的宏--VBA的简单例子