这个练习比较简单。Android支持库有个叫作ShareCompat的类,它有一个内部类叫IntentBuilder。使用这个内部类创建发送消息的Intent略微方便一些。因此,请在mReportButton的监听器中,改用ShareCompat.IntentBuilder来创建你的Intent。
ShareCompat提供了扩展ACTION_SEND/ACTION_SEND_MULITPLE端口和支持获取更多的数据关于activity来触发一个social sharing。ShareCompat.IntentBuilder提供了帮助功能来构造一个共享的intent,它包含了关于调用activity和app的所有数据。这让调用的activity提供了共享内容的app的属性。
1.原本的代码和运行效果:
2.导入import android.support.v4.app.ShareCompat;
3.修改mReportButton点击监听器里面的代码
1 mReportButton.setOnClickListener(new View.OnClickListener() { 2 public void onClick(View v) { 3 ShareCompat.IntentBuilder i = ShareCompat.IntentBuilder.from(getActivity()); 4 i.setType("text/plain"); 5 i.setText(getCrimeReport()); 6 i.setSubject(getString(R.string.crime_report_subject)); 7 i.createChooserIntent(); 8 i.startChooser(); 9 } 10 });
4.运行效果: