如何在Android应用程序中打开浏览器?

时间:2013-09-07 15:01:07

标签: java android android-intent

我正在做一个项目,我必须通过我的Android应用程序调用浏览器,但当我调用它时,应用程序停止。

可以在此处找到代码:https://github.com/coppetti/android-pulsometer

但是为了快速查看,我有一个“Pulsometro”类

public void onPreviewFrame(byte[] data, Camera cam) {
...
Browser browser = new Browser();
browser.callBrowser(beats);

return;
...
}

和一个浏览器类,其中:

public class Browser extends Activity{
     public  void callBrowser(int beats){
         String url = "http://www.higia.info/?q="+beats;
         Intent i = new Intent(Intent.ACTION_VIEW);
         i.setData(Uri.parse(url));
         startActivity(i);

         return;
        }
}

有一种方法可以调用浏览器,我的应用程序不会中断吗?

3 个答案:

答案 0 :(得分:1)

试试这个:

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

public void onOpenWebBrowser(View v)
{
Intent webPageIntent = new Intent(Intent.ACTION_VIEW);
webPageIntent.setData(Uri.parse("https://www.google.co.in/"));

try {
          startActivity(webPageIntent);
} catch (ActivityNotFoundException ex) {

}
}

答案 1 :(得分:0)

不要只是随机选择超类。不要只创建Activity的某个子类并期望它能够正常工作。

将您的callBrowser()方法转移到一些真正的Activity实现中,并完全摆脱Browser

或者,从Browser移除超类,让callBrowser()Context作为参数,然后在startActivity()上调用Context

答案 2 :(得分:0)

试试这堂课。调用callBrowser方法并为Activity参数提供context

public class Browser{
 public  void callBrowser(Context context, int beats){
     String url = "http://www.higia.info/?q="+beats;
     Intent i = new Intent(Intent.ACTION_VIEW);
     i.setData(Uri.parse(url));
     context.startActivity(i);
    }
}
相关问题