我想打开Whatsapp联系人列表并获取选定的联系人数据.我能够完成一半的工作. Whatsapp联系人列表打开,但一旦我按任何联系人我的应用程序崩溃.这是我的代码:
要打开Whatsapp联系人列表:
btnChoose.setonClickListener(new VIEw.OnClickListener() { @OverrIDe public voID onClick(VIEw v) { Intent intent = new Intent(Intent.ACTION_PICK); intent.setPackage("com.whatsapp"); try{ Toast.makeText(AddScheduleActivity.this,"going out activity",Toast.LENGTH_SHORT).show(); startActivityForResult(intent,1); Toast.makeText(AddScheduleActivity.this,"getting In activity",Toast.LENGTH_SHORT).show(); } catch (Exception e) { Toast.makeText(AddScheduleActivity.this,"Whatsapp not found",Toast.LENGTH_SHORT).show(); //no activity found to handle this intent means whatsapp is not installed } } });
要获得选择: –
@OverrIDepublic voID onActivityResult(int requestCode,int resultCode,Intent intent) { super.onActivityResult(requestCode,resultCode,intent); Toast.makeText(AddScheduleActivity.this,"Ok In",Toast.LENGTH_SHORT).show(); switch (requestCode) { case 1: if(resultCode == RESulT_OK){ if(intent.hasExtra("contact")){ Toast.makeText(AddScheduleActivity.this,"Ok working",Toast.LENGTH_SHORT).show(); Uri uri = intent.getData(); //query the content uri Cursor cursor = getContentResolver().query(uri,null,null); cursor.movetoFirst(); // column index of the phone number int phoneIndex =cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER); // column index of the contact name int nameIndex =cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.disPLAY_name); contactNumber = cursor.getString(phoneIndex); name = cursor.getString(nameIndex); } } break; default: break; }}
如果我没有选择任何联系并按回,那么在这种情况下他们不会崩溃
提前致谢.
解决方法 intent.getdata()将始终返回null.使用intent.getExtras().getString(“contact”);获取联系电话.
总结以上是内存溢出为你收集整理的从Android应用程序打开Whatsapp联系人列表全部内容,希望文章能够帮你解决从Android应用程序打开Whatsapp联系人列表所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)