Пытаюсь извлечь информацию из журнала звонков андроида.Я получаю дату звонка, который на месяц позже фактического времени звонка.Я хочу сказать, что информация, извлеченная моим кодом для даты звонка, на один месяц меньше, чем фактическая дата звонка.
В эмуляторе есть следующее:
Я сохранил контакт,Затем я позвонил контакту.
Код:
У меня есть 3 способа извлечь информацию о дате звонка, но получить тот же неправильный результат.Мой код выглядит следующим образом:
/* Make the query to call log content */
Cursor callLogResult = context.getContentResolver().query(
CallLog.Calls.CONTENT_URI, null, null, null, null);
int columnIndex = callLogResult.getColumnIndex(Calls.DATE);
Long timeInResult = callLogResult.getLong(columnIndex);
/* Method 1 to change the milliseconds obtained to the readable date formate */
Time time = new Time();
time.toMillis(true);
time.set(timeInResult);
String callDate= time.monthDay+"-"+time.month+"-"+time.year;
/* Method 2 for extracting the date from tha value read from the column */
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(time);
String Month = calendar.get(Calendar.MONTH) ;
/* Method 3 for extracting date from the result obtained */
Date date = new Date(timeInResult);
String mont = date.getMonth()
При использовании метода Calendar я также пытался установить смещение сохранения DayLight, но оно не сработало,
calendar.setTimeZone(TimeZone.getTimeZone("Europe/Paris"));
int DST_OFFSET = calendar.get( Calendar.DST_OFFSET ); // DST_OFFSET
Boolean isSet = calendar.getTimeZone().useDaylightTime();
if(isSet)
calendar.set(Calendar.DST_OFFSET , 0);
int reCheck = calendar.get(Calendar.DST_OFFSET );
Но значение не установленодо 0 в перепроверке.Я также получаю неправильное значение месяца, используя это.
Пожалуйста, кто-нибудь, помогите мне, где я не прав?или это ошибка в эмуляторе ??
Спасибо, Нишант Кумар, студент инженерного факультета