在Android中,可以使用以下方法获取当前网络时间戳:
public static long getCurrentNetworkTimestamp() {
try {
URL url = new URL("http://www.baidu.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(5000); // 设置连接超时时间
connection.connect();
long timestamp = connection.getDate(); // 获取服务器时间
connection.disconnect();
return timestamp;
} catch (IOException e) {
e.printStackTrace();
}
return 0;
}
这个方法通过访问一个可靠的服务器(如百度),获取服务器的时间并返回时间戳。请确保在使用这个方法时添加网络访问权限 <uses-permission android:name="android.permission.INTERNET" />
。
在Android设备上,可以通过以下代码获取当前网络时间戳:
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
public class NetworkTime {
public static long getNetworkTimestamp() {
try {
URL url = new URL("https://www.aliyun.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(5000);
connection.connect();
long timestamp = connection.getDate();
connection.disconnect();
return timestamp;
} catch (IOException e) {
e.printStackTrace();
return 0;
}
}
}
在上面的代码中,我们向阿里云的网站发送一个HTTP请求,并获取到该请求的时间戳。注意要在Android设备上保持网络连接。
然后,在你的代码中调用 getNetworkTimestamp
方法来获取当前网络时间戳:
long networkTimestamp = NetworkTime.getNetworkTimestamp();
网络时间戳是一个长整型数值,表示从协调世界时(UTC)1970年1月1日00:00:00开始经过的毫秒数。
发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/142138.html