我正在尝试在Chrome中打开文件,如果我不使用try / catch,则显示错误
" 无法找到明确的活动类(com.android.browser / com.android.chrome / com.google.android.apps.chrome.Main);您是否已在 AndroidManifest.xml ?
中声明了此活动
我还没有宣布,也不知道怎么样 - 有人可以帮我吗?
void deployChromeFile()
{
File file = new File(Environment.getExternalStorageDirectory() +"/Documents/Recipe73.htm");
if(file.exists()){
try {
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.fromFile(file));
browserIntent.setType("multipart/related");
browserIntent.setClassName("com.android.browser", "com.android.chrome/com.google.android.apps.chrome.Main");
browserIntent.addCategory(Intent.CATEGORY_BROWSABLE);
browserIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
browserIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
browserIntent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
startActivity(browserIntent);
} catch (ActivityNotFoundException e) {
Toast.makeText(this, "Activity not found ", Toast.LENGTH_LONG).show();
}
}
else{Toast.makeText(this, "File does not exist ", Toast.LENGTH_LONG).show();}
}
答案 0 :(得分:0)
实施已经改变,试试这个简单的方法,
try {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
intent.setPackage("com.android.chrome");
startActivity(intent);
} catch (ActivityNotFoundException e) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
startActivity(intent);
}
希望它会有所帮助:)
答案 1 :(得分:0)
我被重新发送到Manifest的错误消息所牵制。意图不需要声明。由于我缺乏知识,我将意图过滤器与意图混淆。感谢您的帮助。