当前位置: 代码迷 >> Android >> android短信跟电话(联系人)和调用其他应用总结
  详细解决方案

android短信跟电话(联系人)和调用其他应用总结

热度:46   发布时间:2016-05-01 19:22:08.0
android短信和电话(联系人)和调用其他应用总结
有这样的一种业务:
1、有一个页面,页面上有电话号码和一些内容。我的目的是把电话号码和内容接受到,然后发短信,调用的是android系统的发短信功能。也就是直接弹出发短信界面,这个界面有电话号码和短信内容,很显然把电话号码和短信内容显示到指定地方。那么这么做:
Intent intent = new Intent(Intent.ACTION_VIEW);intent.putExtra("address", "1222222223456");intent.putExtra("sms_body", "I am joe!");intent.setType("vnd.android-dir/mms-sms");startActivity(intent);

2、有一个页面,可能有一个按钮,我要触发的事件是:点击这个按钮我要查看你手机的所有短信列表:
Intent intent = new Intent( ); ComponentName comp = new ComponentName("com.android.mms","com.android.mms.ui.ConversationList");intent.setComponent(comp); intent.setAction("android.intent.action.VIEW"); startActivity(intent);

3、有一个页面,可能有一个按钮,我要触发的事件是:点击这个按钮我要查看你手机的所有电话联系人的列表:
Intent intent = new Intent(Intent.ACTION_VIEW, ContactsContract.Contacts.CONTENT_URI);startActivity(intent);

注意:
如果你只是为了看所有联系人列表不做任何操作,只是点击每项时,我自己去后台做操作,那么这么做:
Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);startActivityForResult(intent, 0);

然后重写这个方法onActivityResult(...)

短信和联系人还有很多需求,我这里不提了。
4、当前应用调用其他应用:
1)通过包名:
PackageManager packageManager = OtherApplication.this.getPackageManager();  Intent intent=new Intent();  intent =packageManager.getLaunchIntentForPackage("com.joe.internet");  				startActivity(intent);

2)通过类名:
Intent intent=new Intent();intent.setComponent(new ComponentName("com.joe.internet", "com.joe.internet.Main"));startActivity(intent);
  相关解决方案