From d2a72b09b3c5abba46737303052f81f25d838a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=91=9E=E5=AE=87?= <157418979@qq.com> Date: Tue, 12 Nov 2019 14:31:21 +0800 Subject: [PATCH] Repeat click to fix the problem Repeat click to fix the problem --- .../flutter/contactpicker/ContactPickerPlugin.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/android/src/main/java/net/goderbauer/flutter/contactpicker/ContactPickerPlugin.java b/android/src/main/java/net/goderbauer/flutter/contactpicker/ContactPickerPlugin.java index 1c4c373..13b2c11 100644 --- a/android/src/main/java/net/goderbauer/flutter/contactpicker/ContactPickerPlugin.java +++ b/android/src/main/java/net/goderbauer/flutter/contactpicker/ContactPickerPlugin.java @@ -9,6 +9,7 @@ import android.database.Cursor; import android.net.Uri; import android.provider.ContactsContract; +import android.util.Log; import java.util.HashMap; @@ -41,14 +42,13 @@ private ContactPickerPlugin(Activity activity) { @Override public void onMethodCall(MethodCall call, Result result) { if (call.method.equals("selectContact")) { - if (pendingResult != null) { - pendingResult.error("multiple_requests", "Cancelled by a second request.", null); - pendingResult = null; + if (pendingResult == null) { + pendingResult = result; + Intent i = new Intent(Intent.ACTION_PICK, ContactsContract.CommonDataKinds.Phone.CONTENT_URI); + activity.startActivityForResult(i, PICK_CONTACT); + } else { + Log.v("ContactPickerPlugin", "Multiple requests may have been made"); } - pendingResult = result; - - Intent i = new Intent(Intent.ACTION_PICK, ContactsContract.CommonDataKinds.Phone.CONTENT_URI); - activity.startActivityForResult(i, PICK_CONTACT); } else { result.notImplemented(); }