Facebook打開,跳轉個人首頁、動態方式

1. 啓動facebook,如果已經啓動,就切換到前臺

fun startFacebook(context: Context) {
    val pkgName = "com.facebook.katana"
    var intent=context.packageManager.getLaunchIntentForPackage(pkgName);
    if (intent==null) {
        intent = Intent()
        intent.action = "android.intent.action.VIEW"
        // 打開url
        val content_url = Uri.parse("http://facebook.com/")
        intent.data = content_url
        context.startActivity(intent)

    } else {
       /* intent.flags =
            Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED or Intent.FLAG_ACTIVITY_CLEAR_TOP*/
        context.startActivity(intent)
    }

}

2. 打開指定頁面

個人主頁參數:https://www.facebook.com/profile.php?id=xxx

指定動態參數:https://www.facebook.com/1023380141053376/posts/2833358400055532/

公共主頁:自行百度,我採用的個人主頁

fun startFaceBookWithUrl(context: Context,url:String){
    val install=AppUtils.isAppInstalled("com.facebook.katana")
    val intent = Intent()
    intent.action = "android.intent.action.VIEW";

    val facebookUrl=if(!install){
        url
    }else{
       getFacebookDetailURL(context,url)
    }
    intent.data = Uri.parse(facebookUrl)

    context.startActivity(intent)
}
/**
 * 直接鏈接
 */
fun getFacebookDetailURL(context: Context,url:String): String? {
    val packageManager = context.packageManager
    try {
        val versionCode = packageManager.getPackageInfo("com.facebook.katana", 0).versionCode
        if (versionCode >= 3002850) { //newer versions of fb app
            return "fb://facewebmodal/f?href=$url"
        }
    } catch (e: PackageManager.NameNotFoundException) {
        e.printStackTrace()
    }
    return url
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章