Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:无法从应用程序连接到internet?_Java_Android_Email_Android Studio - Fatal编程技术网

Java Android:无法从应用程序连接到internet?

Java Android:无法从应用程序连接到internet?,java,android,email,android-studio,Java,Android,Email,Android Studio,我正在尝试在android studio中运行代码,并进行了一些修改以将信息转发到我的电子邮件帐户 但我无法从我的应用程序ping或连接到gmail smtp。我添加了以下代码来检查互联网连接,但ping google.com同时返回false和checknetworkstatus返回true。我已连接到我的Wifi网络 public static boolean ping(String url, int timeout) { // Otherwise an except

我正在尝试在android studio中运行代码,并进行了一些修改以将信息转发到我的电子邮件帐户

但我无法从我的应用程序ping或连接到gmail smtp。我添加了以下代码来检查互联网连接,但ping google.com同时返回false和checknetworkstatus返回true。我已连接到我的Wifi网络

        public static boolean ping(String url, int timeout) {
    // Otherwise an exception may be thrown on invalid SSL certificates:
    url = url.replaceFirst("^https", "http");

    try {
        HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
        connection.setConnectTimeout(timeout);
        connection.setReadTimeout(timeout);
        try {
            connection.setRequestMethod("HEAD");

            int responseCode = connection.getResponseCode();
            System.err.println("URL " + url + " returned: " + responseCode);
            return ((200 <= responseCode && responseCode <= 399) || (responseCode == 405));
        } catch (ProtocolException e) {
            e.printStackTrace();
        }
    } catch (IOException exception) {
        return false;
    }
    return false;
}

public boolean checkNetworkStatus() {

    // Variables used for checking the network state.
    final ConnectivityManager connMgr = (ConnectivityManager) getApplicationContext()
            .getSystemService(Context.CONNECTIVITY_SERVICE);

    final NetworkInfo wifi = connMgr
            .getNetworkInfo(ConnectivityManager.TYPE_WIFI);

    final NetworkInfo mobile = connMgr
            .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

    if ((wifi.isConnected() == true) || (mobile.isConnected() == true)) {
        return true;
    } else
        return false;
}

这是android studio中的某种错误还是其他错误???

参考看起来像是您的网络问题,而不是代码问题。@sasikumar尝试了您的链接,但仍然给出了
!javax.mail.MessagineException:无法连接到SMTP主机:SMTP.gmail.com,端口:587;嵌套异常为:java.net.ConnectException:90000ms后未能连接到smtp.gmail.com/2404:6800:4003:c00::6c(端口587):未连接失败:未连接(网络无法访问)
参考看起来像是网络问题,而不是代码。@sasikumar尝试了您的链接,但仍然给出了
!javax.mail.MessagineException:无法连接到SMTP主机:SMTP.gmail.com,端口:587;嵌套异常为:java.net.ConnectException:90000ms后未能连接到smtp.gmail.com/2404:6800:4003:c00::6c(端口587):未连接失败:未连接(网络无法访问)
     <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
   09-07 12:00:32.082  21249-24268/com.example.callsmsforward W/System.err﹕ javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;
   09-07 12:00:32.082  21249-24268/com.example.callsmsforward W/System.err﹕ nested exception is:
   09-07 12:00:32.083  21249-24268/com.example.callsmsforward W/System.err﹕ java.net.ConnectException: failed to connect to smtp.gmail.com/2404:6800:4003:c00::6c (port 465) after 90000ms: isConnected failed: ENETUNREACH (Network is unreachable)