【问题标题】:Saving contact to SIM card将联系人保存到 SIM 卡
【发布时间】:2013-08-09 10:55:26
【问题描述】:

我想将contact 保存到sim 卡,但我无法做到。我使用此代码保存联系人

ContentValues values = new ContentValues();
        values.put(People.NUMBER, phone);
        values.put(People.TYPE, Phone.TYPE_CUSTOM);
        values.put(People.LABEL, name);
        values.put(People.NAME, name);

        Uri dataUri = getContentResolver().insert(People.CONTENT_URI, values);
        Uri updateUri = Uri.withAppendedPath(dataUri, People.Phones.CONTENT_DIRECTORY);
        values.clear();
        values.put(People.Phones.TYPE, People.TYPE_CUSTOM);
        values.put(People.NUMBER, phone);
        updateUri = getContentResolver().insert(updateUri, values);

但它没有保存在 SIM 卡中。 请帮帮我!

【问题讨论】:

    标签: android


    【解决方案1】:

    您应该获取 SIM 卡联系人的 dataUri,而不是设备中存储的联系人。

    Uri simUri = Uri.parse("content://icc/adn");
    Cursor cursorSim = this.getContentResolver().query(simUri, null, null,null, null);
    

    您的应用程序还应获得读写联系人的权限。添加

    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
    

    到您的 Android.xml 文件。

    看看

    How can we add sms programatically in sim card in android

    How to get All Sim Contacts in Android Progrmmatically?

    【讨论】:

    • 我使用了Thic Code,但我的联系人中没有出现任何内容 Uri simUri = Uri.parse("content://icc/adn");内容值 cv = new ContentValues(); cv.put("名字", "zzzz"); cv.put("数字", "99999999999"); getContentResolver().insert(simUri, cv);
    【解决方案2】:

    cv.put("name", "zzzz"); // Wrong "name" 不是正确的键。改用“标签”cv.put("tag", "zzzz");

    【讨论】:

      【解决方案3】:

      您没有提供任何 ID 来添加联系人。

      values.put(Data.RAW_CONTACT_ID, idyouwanttoadd);
      

      更多信息请查看以下链接: How to add new contacts in android

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-25
        • 2011-10-02
        相关资源
        最近更新 更多