我找到了答案
在 Main Activity 的“onCreate”方法中包含以下两行:
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
我创建了一个 android 应用程序,它将从 URL 读取文本并在屏幕上显示文本。当我的输入是“ http://web.njit.edu/~halper/it114/l2d.txt ”时它会崩溃,但当我的输入是“ http://web.njit.edu/~halper/it114/l2d ”时它什么也不做.txt ”。我尝试添加 android.permission.INTERNET
到 Manifest.xml,但仍然得到相同的结果。
致命异常:main
java.lang.IllegalStateException:无法执行活动
的方法 原因:java.lang.reflect.InvocationTargetException
原因:android.os.NetworkOnMainThreadException
非常感谢您的宝贵时间
public void enter(View v) {
EditText input = (EditText) findViewById(R.id.edit_file);
TextView tv = (TextView) findViewById(R.id.text_main);
try {
URL url = new URL( input.getText().toString() );
Scanner scan = new Scanner( url.openStream() );
while( scan.hasNext() )
tv.append( scan.nextLine() );
}
catch(MalformedURLException e) { e.printStackTrace(); }
catch(IOException e) {e.printStackTrace();}
}