我尝试在点击按钮时打开网页。但是,它不起作用。 这是我的代码:
ImageButton fbButton = (ImageButton) findViewById(R.id.fb);
fbButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent viewIntent = new Intent("Intent.ACTION_VIEW", Uri.parse("http://www.facebook.com"));
startActivity(viewIntent);
}
});
它总是会发表声明。
这里是Manifest文件权限代码:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
错误日志:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.krish.me, PID: 4532
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=Intent.ACTION_VIEW dat=http://www.facebook.com }
提前谢谢你:)
答案 0 :(得分:3)
Intent viewIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.facebook.com"));
使用Intent.ACTION_VIEW
代替"android.intent.action.view"
。
答案 1 :(得分:1)
如果您想使用Intent 打开网址,只需使用Intent.ACTION_VIEW
代替android.intent.action.view
Intent viewIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com"));
您的代码将变为这样 -
ImageButton fbButton = (ImageButton) findViewById(R.id.fb);
fbButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
Intent viewIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com/"));
startActivity(viewIntent);
}
catch (Exception e) {
Toast.makeText(getApplicationContext(), "Can't connect to Internet",
Toast.LENGTH_SHORT).show();
}
}
});
确保您在AndroidManifest文件中添加了Internet权限。
<uses-permission android:name="android.permission.INTERNET" />
问题是我认为您没有任何可以打开手机中安装的网址(即浏览器)的应用。
答案 2 :(得分:1)
试试这个,
try {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.facebook.com"));
startActivity(Intent.createChooser(intent, "Choose browser"));
} catch (Exception e) {
Toast.makeText(getApplicationContext(), "Can't connect to Internet",
Toast.LENGTH_SHORT).show();
}