[英]How to check if Cordova app is running in a 12 (AM/PM) or 24 hour environment
是否可以檢測用戶的機器使用的是12小時制(am / pm)還是24小時制
我嘗試了以下代碼,但是不適用於chrome默認瀏覽器
var date = new Date(Date.UTC(2012, 11, 12, 3, 0, 0));
var dateString = date.toLocaleTimeString();
if (dateString.match(/am|pm/i) || date.toString().match(/am|pm/i) )
{
//12 hour clock
}
else
{
//24 hour clock
}
請建議任何可提供IOS和Android系統時間格式的cordova插件或JavaScript代碼。
使用android和ios cordova應用程序插件代碼和信息
ios代碼
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
[formatter setDateStyle:NSDateFormatterNoStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
NSString *dateString = [formatter stringFromDate:[NSDate date]];
NSRange amRange = [dateString rangeOfString:[formatter AMSymbol]];
NSRange pmRange = [dateString rangeOfString:[formatter PMSymbol]];
BOOL is24h = (amRange.location == NSNotFound && pmRange.location == NSNotFound);
NSLog(@"IS 24 h format%@\n",(is24h ? @"YES" : @"NO"));
Android代碼
String value = android.provider.Settings.System.getString(context.getContentResolver(), android.provider.Settings.System.TIME_12_24);
我會為此使用普通的javascript:
var dateStringToLookAt = (new Date).toLocaleString();
適用於所有現代瀏覽器,也應適用於任何Cordova應用。
然后對照地區地圖及其時間格式檢查navigator.language
。
我也需要一個項目來使用它,因此我建立了cordova-plugin-24hour-setting來支持Android和iOS。 這是基於Kalpesh Kikani的有用答案。 隨意使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.