Facebook页面帖子URI scheme失效,求新版可用调用方案
解决Facebook帖子URI Scheme失效问题的可行方案
嘿,我完全懂你碰到的麻烦——Facebook的URI Scheme确实会不定期调整,之前一直用的fb://post/pageID_postID突然失效这种情况挺常见的。给你几个当前可用的替代方案,你可以试试看:
标准单帖子URI格式
目前比较稳定的是fb://post/?id=POST_ID,这里只需要传入你的帖子ID就行,不需要拼接页面ID前缀。修改后的代码可以参考这样:try { String uri = "fb://post/?id=" + bundle.getString("post_id"); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri)); startActivity(intent); } catch (ActivityNotFoundException ex) { // 退而求其次用网页版,直接拼接帖子的专属网页链接更精准 String uri = "https://www.facebook.com/posts/" + bundle.getString("post_id"); Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(uri)); startActivity(i); }页面专属帖子的URI格式
如果上面的方式还是无法正常跳转,你可以试试明确指定页面ID和帖子ID的格式:fb://page/[PAGE_ID]/post/[POST_ID],把方括号里的内容替换成你对应的页面ID和帖子ID就行,这种格式对页面下的特定帖子兼容性更好。
另外要提醒一句:Facebook并没有公开承诺URI Scheme的长期稳定性,所以后续可能还会有变动。如果再次遇到失效,先检查你的Facebook应用是不是最新版本——很多时候旧版本的APP不支持新的URI格式,更新后就能解决问题。
内容的提问来源于stack exchange,提问作者fillobotto
相关产品推荐
相关产品推荐

