大家好我正在编写一些简单的代码,以便在Android设备上打开网页。一切都很好但是当我试图检查URL是否存在时,我总是得到URL不存在的相同错误。任何帮助将非常感激。非常感谢。
所以这是我的代码:
public class MainActivity extends Activity
{
public static final String siteurl = "google.com";
@Override
public void onCreate(Bundle savedInstanceState)
{
final Context context = this;
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Check Internet connectivity
if (!exists(siteurl))
{
Toast.makeText(getApplicationContext(), "This site doesnt exist", Toast.LENGTH_LONG).show();
TimedExit();
}
else
{
// Launch site
startActivity(new Intent(context, WebViewActivity.class));
}
}
public static boolean exists(String URLName)
{
try
{
HttpURLConnection.setFollowRedirects(false);
// note : you may also need
// HttpURLConnection.setInstanceFollowRedirects(false)
HttpURLConnection con = (HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e)
{
e.printStackTrace();
return false;
}
}
public void TimedExit()
{
TimerTask exitApp = new TimerTask()
{
@Override
public void run()
{
System.exit(0);
}
};
Timer timer = new Timer();
timer.schedule(exitApp, new Date(System.currentTimeMillis() + 7000));
}
}
我的webview活动:
public class WebViewActivity extends Activity
{
private WebView webView;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.webview);
webView = (WebView) findViewById(R.id.webView1);
webView.getSettings().setJavaScriptEnabled(true); // TODO: Check this warning
webView.loadUrl(MainActivity.siteurl);
webView.setWebViewClient(new WebViewClient());
}
}
所以这里的问题是每次程序运行时都会返回URL不存在的情况。任何帮助将不胜感激。谢谢。
答案 0 :(得分:1)
如果您尝试从应用程序中获取Internet访问权限,则应在清单文件中添加适当的权限标记,最好在应用程序标记之前。
在这种情况下:
<uses-permission android:name="android.permission.INTERNET" />
如this帖子所示。
我知道已经晚了,我希望它有所帮助。