1、true分享好友,false分享朋友圈
class ShareActivity : AppCompatActivity() {
private val imageUris: ArrayList<Uri> = ArrayList()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.layout_test)
tv.setOnClickListener {
startActivityForResult(Intent("android.intent.action.GET_CONTENT").apply {
type = "image/*"
}, 101)
}
}
private fun Boolean.setIntent() {
val intent = Intent()
val cls: String
val pkg = "com.tencent.mm"
if (this) {
cls = "com.tencent.mm.ui.tools.ShareImgUI"
intent.action = Intent.ACTION_SEND_MULTIPLE
intent.putExtra(Intent.EXTRA_STREAM, imageUris)
} else {
cls = "com.tencent.mm.ui.tools.ShareToTimeLineUI"
intent.action = Intent.ACTION_SEND
intent.putExtra(Intent.EXTRA_STREAM, imageUris[0])
}
if (imageUris.isNotEmpty()) {
intent.component = ComponentName(pkg, cls)
intent.type = "image/*"
startActivity(intent)
}
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
when (requestCode) {
101 -> {
if (resultCode == RESULT_OK) {
val uri = data?.data
uri?.let {
imageUris.add(uri)
}
false.setIntent()
}
}
}
}
}