【问题标题】:Exception occured while using (Intent.ACTION_VIEW) in my program在我的程序中使用 (Intent.ACTION_VIEW) 时发生异常
【发布时间】:2011-06-07 08:59:21
【问题描述】:

我正在编写代码来打开浏览器。但是当我运行程序时,它显示 Activity not found 。当我在程序中使用Intent.Action_VIEW,Uri 代码时,是否需要在 Mainfest 文件中声明活动?

我在谷歌上没有很多研发但无法找到解决方案。请帮忙。代码如下。我应该怎么做才能恢复这个问题。

private void openBrowser() {
      Uri uri = Uri.parse(urlText.getText().toString());
      Intent intent = new Intent(Intent.ACTION_VIEW, uri);
      startActivity(intent);
   }
}

【问题讨论】:

  • 是的,您应该将您的活动添加到您的清单中!如果您使用外部链接,您还应该在清单文件中添加互联网访问权限。

标签: android android-intent android-manifest intentfilter


【解决方案1】:

这取决于您在文本框中输入的内容。试试http://www.google.com。它对我有用。从您的评论看来,您输入的是 google.com 而不是 http://www.google.com。试试这个!!!

【讨论】:

  • 感谢 Sweety...它的工作原理.. 实际上我已经通过 ui 编辑文本框进行了输入。当我通过 google.com 时.. 错误来了,但是当我写 google.com 时。它移动到浏览器中的谷歌页面......再次感谢
【解决方案2】:

<uses-permission android:name="android.permission.INTERNET"></uses-permission> 应该在androidManifest.xml中声明

【讨论】:

  • 我有在 mainfeast 文件中写入互联网权限。但例外是在活动开始时间。异常如下: ERROR/AndroidRuntime(703): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=google.com }
【解决方案3】:

我创建了一个“HelloWorld”应用,并且 VIEW_ACTION Uri 代码在其中运行良好,所以我认为“找不到活动”错误与它或权限无关。您应该检查是否在 AndroidManifest.xml 中添加了活动。

package org.example.app;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class Main extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Button button = (Button) findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View v) {
                String url = "http://www.google.com/";
                browseWebPage(url);
            }});
    }

    public void browseWebPage(final String url) {
        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); 
        startActivity(intent); 
    }

}

问候

陈子腾

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-02
    • 2012-05-27
    • 2011-01-06
    • 2017-05-21
    • 2016-09-20
    • 2017-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多