package com.igo.user.utils import android.app.Activity import android.content.Intent import android.net.Uri import com.facebook.CallbackManager import com.facebook.FacebookCallback import com.facebook.FacebookException import com.facebook.share.Sharer import com.facebook.share.model.ShareLinkContent import com.facebook.share.widget.ShareDialog import com.igo.user.interfaces.StringCallback import com.twitter.sdk.android.tweetcomposer.TweetComposer import java.net.URL /** * 分享工具类 */ object IGoShareUtils { fun shareFB(act: Activity,url:String,content:String,callback: StringCallback? = null){ val mFBShareDialog = ShareDialog(act) mFBShareDialog.registerCallback(CallbackManager.Factory.create(),object : FacebookCallback { override fun onCancel() { // act.myToast(act.getString(R.string.share_cancel)) } override fun onError(error: FacebookException) { // act.myToast(act.getString(R.string.share_error)) } override fun onSuccess(result: Sharer.Result) { // act.myToast(act.getString(R.string.share_success)) callback?.onRlt("") } }) if (ShareDialog.canShow(ShareLinkContent::class.java)) { val mShareLinkBuilder = ShareLinkContent.Builder() mShareLinkBuilder.setContentUrl(Uri.parse(url)) mShareLinkBuilder.setQuote(content) mFBShareDialog.show(mShareLinkBuilder.build()) } } fun shareTweet(act: Activity, txt: String, url: String, uri: String = "/mipmap-xxhdpi/ic_launcher.png"){ try { val uri1 = "android.resource://" + act.packageName + uri val builder = TweetComposer.Builder(act) builder.text(txt).url(URL(url)).image(Uri.parse(uri1)).show() } catch (e: Exception) { e.printStackTrace() } } fun shareWA(act: Activity, txt: String, url: String){ val shareUrlStr = "https://wa.me/?text= $txt $url" //shareUrlStr = "https://wa.me/?text=I'm inquiring about the apartment listing http://175.178.103.49/landing/index.html/ic=4433&source=10015"; val uriUrl = Uri.parse(shareUrlStr) val launchBrowerIntent = Intent(Intent.ACTION_VIEW, uriUrl) act.startActivity(Intent.createChooser(launchBrowerIntent, "I-Go")) } }