#android #datetime #xamarin.forms #xamarin.android #prism
#Android #datetime #xamarin.forms #xamarin.android #prism
Вопрос:
Используя несколько эмуляторов Android при настройке выпуска, класс DateTime ведет себя нормально. Но когда я устанавливаю его на телефон Android, он ведет себя по-другому.
Пример:
-
Формат даты и времени в эмуляторе ‘MM / dd / yyyy h: mm: ss tt’, но при установке в реальном телефоне формат меняется на ‘dd MMMM yyyy HH: mm: ss’
-
При использовании DateTime.Теперь эмулятор возвращает текущую дату и время телефона, но установленное приложение в реальном телефоне возвращает 1/1/0001.
-
Также DateTime.TryParse работает в эмуляторе, но сбой в установленном приложении.
Вот мои настройки Proguard.cfg
-keep class com.google.android.gms.** { *; }
-dontwarn com.google.android.gms.**
-keep class com.google.firebase.provider.** { *; }
-dontwarn com.google.firebase.provider.**
-keep class com.google.firebase.iid.** { *; }
-dontwarn com.google.firebase.iid.**
-keep class android.support.v7.widget.** { *; }
-dontwarn android.support.v7.widget.**
-keep class android.support.design.internal.BaselineLayout { *; }
-dontwarn android.support.design.internal.BaselineLayout
Вот часть моего кода:
DateTime newDateValue = DateTime.Now;
string forParsing = "10/23/2020 4:40:59 AM";
bool response = DateTime.TryParse(forParsing, out newDateValue);
Комментарии:
1. вы должны быть уверены, что настройки локали на вашем телефоне и эмуляторе совпадают. Формат вывода DateTime по умолчанию и параметры синтаксического анализа по умолчанию будут различаться в зависимости от локали.
2. @Jason, вау, спасибо! это сработало. Проблема решена!