【问题标题】:Decide if user chose or created contact确定用户是否选择或创建了联系人
【发布时间】:2014-09-06 19:21:45
【问题描述】:

用户可以像这样创建或选择我的应用:

Intent intent = new Intent(Intent.ACTION_INSERT_OR_EDIT);
                intent.setType(ContactsContract.Contacts.CONTENT_ITEM_TYPE);
                intent.putExtra(ContactsContract.Intents.Insert.NAME,
                        user.getName());
                intent.putExtra(INTENT_KEY_FINISH_ACTIVITY_ON_SAVE_COMPLETED,
                        true);
                startActivityForResult(intent, ADD_CONTACT);

然后在onActivityResult中:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (data == null) {
            Log.e(TAG, "DATA NULL");
            return;
        }
        if (requestCode == ADD_CONTACT) {
            if (resultCode == RESULT_OK) {
                //QUESTION HERE
                Uri contactData = data.getData();
                Cursor c = getContentResolver().query(contactData, null, null,
                        null, null);

            } else {
                Log.e(TAG, "RESULT NOT OK!");
            }
        }
    }

问题:有什么方法可以决定用户是创建还是选择了现有联系人? :)

【问题讨论】:

    标签: android contacts contactscontract


    【解决方案1】:

    您可以获取用户操作之前和之后的联系人数量(使用此:how many contacts in contact list)。不仅仅是比较。

    【讨论】:

      【解决方案2】:

      如果您不需要有关更改/添加的联系人的信息,您可以保留联系人的数量。

      如果您需要更改/添加的内容you can check for this answer for observer

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-02-09
        相关资源
        最近更新 更多