我有一个离线运行的应用。我需要访问当前时间,因为用户可以更改时间并且互联网不可用,所以我想获得网络提供的时间。
我试着用这个
LocationManager locMan = (LocationManager) Activity.getSystemService(Activity.LOCATION_SERVICE);
long networkTime = locMan.getLastKnownLocation(LocationManager.NETWORK_PROVIDER).getTime();
但这也会返回更改的日期/时间,而不是当前时间。
我还试图强制执行网络提供的日期和时间,但它无法正常工作。我这样做
String timeSettings = android.provider.Settings.System.getString(
this.getContentResolver(),
android.provider.Settings.System.AUTO_TIME);
if (timeSettings.contentEquals("0")) {
android.provider.Settings.System.putString(
this.getContentResolver(),
android.provider.Settings.System.AUTO_TIME, "1");
}
这也不会强制执行网络提供的日期和时间。由于互联网不可用,所以我也不能使用NTP。有什么方法可以得到当前时间(即使它的几个小时不同步,即最后已知的位置时间)。
谢谢你, 哈姆扎