Pu Zhibing
2025-12-11 ab0c19e49fabdb8cc6eea454ea455bce2efbb718
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
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<Sharer.Result> {
            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"))
    }
}