-1

打開我試圖打開已URL擴展的.cmsCMS網址而非瀏覽器通過隱含的意圖

嘗試簡單的網址,而不是當如新聞提要http://www.google.com/,它按預期工作,但不適用於.cms頁面。

我不想添加我自己的WebView。我很確定.cms導致了這個問題,但不知道如何用現成的/第三方瀏覽器解決它。

public static void openLinkInExternalBrowser(Context context, String url) { 
    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); 
    context.startActivity(browserIntent); 
} 

當我嘗試打開它,我得到異常

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat= http://timesofindia.indiatimes.com/india/spurned-lovers-tip-off-helped-track-kill-top-jaish-terrorist-khalid/articleshow/61013573.cms } 
                   at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1936) 
                   at android.app.Instrumentation.execStartActivity(Instrumentation.java:1615) 
                   at android.app.Activity.startActivityForResult(Activity.java:4471) 
                   at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:54) 
                   at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:75) 
                   at android.app.Activity.startActivityForResult(Activity.java:4429) 
                   at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:708) 
                   at android.app.Activity.startActivity(Activity.java:4788) 
                   at android.app.Activity.startActivity(Activity.java:4756) 
                   at adapters.NewsAdapter$1.onClick(NewsAdapter.java:66) 
                   at android.view.View.performClick(View.java:6219) 
                   at android.view.View$PerformClick.run(View.java:24482) 
                   at android.os.Handler.handleCallback(Handler.java:769) 
                   at android.os.Handler.dispatchMessage(Handler.java:98) 
                   at android.os.Looper.loop(Looper.java:164) 
                   at android.app.ActivityThread.main(ActivityThread.java:6540) 
                   at java.lang.reflect.Method.invoke(Native Method) 
                   at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) 
+0

該鏈接完美使用intent for me ..這是你試過的操作系統版本? – Anonymous

+0

Android奧利奧8.0和棉花糖6.0 – VVB

+1

我厭倦了奧裏多8.0,它工作得很好。 – Anonymous

回答

0

對於一些原因,您的網址可能已低於使用「www」的。所以嘗試或者用「HTTP」或把它包起來「 https「。這現在對我很有用。

public static void openLinkInExternalBrowser(Context context, String url) { 
    if (!url.startsWith("https://") && !url.startsWith("http://")){ 
     url = "http://" + url; 
    } 
    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); 
    context.startActivity(browserIntent); 
} 
+0

不。在這樣做,我得到的消息「網站無法到達」,它確實是通過複製粘貼相同的網址在瀏覽器上打開罰款。如果條件導致url損壞 – VVB

+0

我猜測是這是不是代碼問題..我想你的DNS或類似的東西有一些問題。嘗試添加硬編碼的URL作爲URL並檢查。 – Anonymous

+0

沒有但在手機瀏覽器中複製了相同的網址並且可以使用 – VVB