Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,
ContactsContract.CommonDataKinds.Phone.CONTENT_URI);
startActivityForResult(contactPickerIntent, RESULT_PICK_CONTACT);
This basic intent works when I extend Activity (i.e. "MainActivity extends Activity"), but not when I extend AppCompatActivity. Can someone explain why, please :| I've been trying to figure it out for days.
I just really want to keep the action bar I already have in an existing app while being able to let the user pick a contact.
Logcat spouted a lot of stuff, not sure how much to copy&paste but here's a log when I clicked the button with a try/catch block:
11-17 18:37:36.386 2790-2790/com.danie.contactstesting1 W/System.err: java.lang.IllegalArgumentException: Can only use lower 16 bits for requestCode
11-17 18:37:36.389 2790-2790/com.danie.contactstesting1 W/System.err: at android.support.v4.app.BaseFragmentActivityApi14.checkForValidRequestCode(BaseFragmentActivityApi14.java:79)
11-17 18:37:36.390 2790-2790/com.danie.contactstesting1 W/System.err: at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:717)
11-17 18:37:36.390 2790-2790/com.danie.contactstesting1 W/System.err: at com.danie.contactstesting1.MainActivity$1.onClick(MainActivity.java:31)
11-17 18:37:36.391 2790-2790/com.danie.contactstesting1 W/System.err: at android.view.View.performClick(View.java:6294)
11-17 18:37:36.391 2790-2790/com.danie.contactstesting1 W/System.err: at android.view.View$PerformClick.run(View.java:24770)
11-17 18:37:36.391 2790-2790/com.danie.contactstesting1 W/System.err: at android.os.Handler.handleCallback(Handler.java:790)
11-17 18:37:36.391 2790-2790/com.danie.contactstesting1 W/System.err: at android.os.Handler.dispatchMessage(Handler.java:99)
11-17 18:37:36.392 2790-2790/com.danie.contactstesting1 W/System.err: at android.os.Looper.loop(Looper.java:164)
11-17 18:37:36.392 2790-2790/com.danie.contactstesting1 W/System.err: at android.app.ActivityThread.main(ActivityThread.java:6494)
11-17 18:37:36.392 2790-2790/com.danie.contactstesting1 W/System.err: at java.lang.reflect.Method.invoke(Native Method)
11-17 18:37:36.392 2790-2790/com.danie.contactstesting1 W/System.err: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
11-17 18:37:36.392 2790-2790/com.danie.contactstesting1 W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
11-17 18:37:36.392 1378-3101/? W/audio_hw_generic: Not supplying enough data to HAL, expected position 489826 , only wrote 489600
11-17 18:37:37.668 2064-3590/com.google.android.dialer I/Dialer: OmtpVvmCarrierCfgHlpr - OmtpEvent:CONFIG_STATUS_SMS_TIME_OUT
11-17 18:37:37.669 2064-2064/com.google.android.dialer I/Dialer: RetryPolicy - discarding deferred status: configuration_state=4
11-17 18:37:37.672 2064-2064/com.google.android.dialer I/Dialer: VvmTaskExecutor - no more tasks, stopping service if no task are added in 5000 millis
11-17 18:37:37.685 2064-2064/com.google.android.dialer I/Dialer: VvmTaskReceiver - task received
11-17 18:37:37.688 2064-2064/com.google.android.dialer I/Dialer: VvmTaskReceiver - TaskExecutor already running
11-17 18:37:37.688 2064-2064/com.google.android.dialer I/Dialer: Task.createTask - create task:com.android.voicemail.impl.ActivationTask
11-17 18:37:37.689 2064-2064/com.google.android.dialer I/Dialer: RetryPolicy - retry #2 for com.android.voicemail.impl.ActivationTask@66adaa2 queued, executing in 5000
11-17 18:37:37.689 2064-2064/com.google.android.dialer I/Dialer: VvmTaskExecutor - com.android.voicemail.impl.ActivationTask@66adaa2 added
11-17 18:37:37.689 2064-2064/com.google.android.dialer I/Dialer: VvmTaskExecutor - minimal wait time:4999
11-17 18:37:37.689 2064-2064/com.google.android.dialer I/Dialer: VvmTaskExecutor - sleep for 4999 millis
11-17 18:37:39.618 1378-1528/? W/audio_hw_generic: Not supplying enough data to HAL, expected position 797294 , only wrote 644400
11-17 18:37:42.695 2064-3590/com.google.android.dialer I/Dialer: VvmTaskExecutor - executing task com.android.voicemail.impl.ActivationTask@66adaa2
11-17 18:37:42.697 2064-3590/com.google.android.dialer I/Dialer: PreOMigrationHandler - ComponentInfo{com.android.phone/com.android.services.telephony.TelephonyConnectionService}, [e2f7d48dd2b5ca523e7313cf4ba0f6ea830b6281], UserHandle{0} already migrated
11-17 18:37:42.740 2064-3590/com.google.android.dialer I/Dialer: VvmActivationTask - VVM content provider configured - vvm_type_cvvm
11-17 18:37:42.741 2064-3590/com.google.android.dialer I/Dialer: OmtpVvmCarrierCfgHlpr - OmtpEvent:CONFIG_ACTIVATING
11-17 18:37:42.763 2064-3590/com.google.android.dialer I/Dialer: TelephonyMangerCompat.setVisualVoicemailSmsFilterSettings - using TelephonyManager
11-17 18:37:42.767 2064-3590/com.google.android.dialer I/Dialer: TelephonyMangerCompat.sendVisualVoicemailSms - using TelephonyManager
11-17 18:38:00.025 1716-1729/com.android.systemui I/zygote: Do partial code cache collection, code=121KB, data=83KB
11-17 18:38:00.025 1716-1729/com.android.systemui I/zygote: After code cache collection, code=121KB, data=83KB
11-17 18:38:00.025 1716-1729/com.android.systemui I/zygote: Increasing code cache capacity to 512KB
11-17 18:38:00.026 1388-1413/? D/hwcomposer: hw_composer sent 18 syncs in 60s
11-17 18:38:08.586 1585-1599/system_process E/memtrack: Couldn't load memtrack module
11-17 18:38:08.587 1585-1599/system_process W/android.os.Debug: failed to get memory consumption info: -1
11-17 18:38:08.609 1585-1599/system_process E/memtrack: Couldn't load memtrack module
11-17 18:38:08.609 1585-1599/system_process W/android.os.Debug: failed to get memory consumption info: -1
11-17 18:38:08.621 1585-1599/system_process E/memtrack: Couldn't load memtrack module
Uhh okay embarrassing, I just had to use a lower request code (RESULT_PICK_CONTACT was 85500). Thanks CommonsWare for pointing me towards Logcat. Haha... Thanks everyone for quick responses as well!