sim卡联系人name为空的问题。

1,之前的版本出现Bug:新建name为空的sim卡联系人,无法删除。

    解决:

2,而后的版本出现新Bug:新建name不为空,Num不为空的sim卡联系人,然后编辑sim卡联系人,将Name清空,无法保存。

   解决:

问题产生的具体原因涉及到Icc处理sim卡,不懂这一块,只能先mark一下,以待后续研究。

关于修改的方法:实际改变的是structuredName--valuesDelta,——> names.get(0).putNull(.,.)置空方法调用与否。

        新建sim卡联系人时,names.get(0).putNull(.,.)置空方法不调用,然后联系人可以正常删除。

        编辑sim卡联系人时,names.get(0).putNull(.,.)置空方法不调用,然后联系人可以修改name为空,正常保存。

          add/update时,如果调用names.get(0).putNull(.,.)置空方法,那么sim卡联系人无法删除。

PS: 但是换一个手机,或是重新刷版本后,之前删不掉的sim卡联系人又可以删除了,所以还是与当前版本Contacts删除操作时的处理有关,估计names.get(0).putNull(.,.)置空方法调用影响database保存的值,导致update/remove时,传递的参数有问题

原文地址:https://www.cnblogs.com/antoon/p/4372382.html