如果耳机当前已插入,我有一个检测问题.我使用Intent.ACTION_HEADSET_PLUG并且它运行良好.我启动一个服务,在onCreate()方法中,我通过registerReceiver()注册我的接收器.大多数时候我立即收到ACTION_HEADSET_PLUG广播,所以我知道耳机是否插入.
但有时候(我不知道为什么)我在注册接收器后没有立即收到这个广播 - 所以我不知道耳机的当前状态.也许我可以假设在那种情况下他们没有连接 - 但我不确定它是否是100%的真相.所以我找到了AudioManager#isWiredHeadsetOn()方法,我还添加了所需的权限MODIFY_AUDIO_SETTINGS.问题是它只适用于耳机(耳机+麦克风),当只是插入耳机时,它每次都会返回假.拜托,您知道如何解决这个问题吗?我正在为Android 2.1开发.
请问,是否可以使用意图和默认联系人应用程序从联系人中选择电话号码?
也许对此进行一些修改(显示所有联系人的选择):
Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, CONTACT_PICKER_ID);
Run Code Online (Sandbox Code Playgroud)