Как правильно узнать текущий день месяца в программе Tizen c - PullRequest
0 голосов
/ 19 марта 2019

следующая программа работает с компилятором c и возвращает правильную дату.Но в коде приложения tizen возвращается 0:

time_t my_time;
    struct tm * timeinfo;
    time (&my_time);
    timeinfo = localtime (&my_time);

    int y = timeinfo->tm_year+1900;
    int m = timeinfo->tm_mon+1;
    int d = timeinfo->tm_mday;
 char day[10];

dlog_print(DLOG_DEBUG, "GG", "Current time: %d %d %d", y,m,d);

обязательный снимок экрана:

enter image description here

показывает 0 только для даты (d) но другие m и y напечатаны правильно.Также аналогичный код печатает правильную дату в другой программе c complier.

Как правильно узнать текущий день месяца?

1 Ответ

0 голосов
/ 20 марта 2019

Вы можете использовать API приложения Watch в носимом профиле.

Образец кода также можно найти в Образце приложения Tizen Studio (Classic Watch). как показано ниже.

/**
 * @brief Called at each second. This callback is not called while the app is paused or the device is in ambient mode.
 * @param[in] watch_time The watch time handle. watch_time will not be available after returning this callback. It will be freed by the framework.
 * @param[in] user_data The user data to be passed to the callback functions
 */
void app_time_tick(watch_time_h watch_time, void* user_data)
{
    int hour = 0;
    int min = 0;
    int sec = 0;
    int year = 0;
    int month = 0;
    int day = 0;
    int day_of_week = 0;

    watch_time_get_hour(watch_time, &hour);
    watch_time_get_minute(watch_time, &min);
    watch_time_get_second(watch_time, &sec);
    watch_time_get_day(watch_time, &day);
    watch_time_get_month(watch_time, &month);
    watch_time_get_year(watch_time, &year);
    watch_time_get_day_of_week(watch_time, &day_of_week);

    _set_time(hour, min, sec);
    _set_date(day, month, day_of_week);
    _set_moonphase(day, month, year);
}
...