How to Update the Terminal's Time Setting

From wizarPOS
Revision as of 19:30, 29 December 2023 by Simon (talk | contribs) (Simon moved page How to update the terminal time to How to Update the Terminal's Time Setting: Normalize the title)

Automatic Update via Wi-Fi

  • When the Wi-Fi connection is enabled, the date and time will automatically update.

Manual Update

  • Go to: Settings > Date & Time.
  • Disable "Automatic time zone" and "Automatic date & time".
  • Manually set the date and time as needed.

Update via API

  • Utilize the Android system clock method to change the system time programmatically.

Required Permissions

  • To use the API method, include the following permission in your application's manifest: 'android.permission.CLOUDPOS_SETTIME'.

Accessing Demo Source

public static void setDateTime(int year, int month, int day, int hour, int minute) throws IOException, InterruptedException {
 
        Calendar c = Calendar.getInstance();
        c.set(Calendar.YEAR, year);
        c.set(Calendar.MONTH, month-1);
        c.set(Calendar.DAY_OF_MONTH, day);
        c.set(Calendar.HOUR_OF_DAY, hour);
        c.set(Calendar.MINUTE, minute);
         
        long when = c.getTimeInMillis();
        if (when / 1000 < Integer.MAX_VALUE) {
            SystemClock.setCurrentTimeMillis(when);
        }
        long now = Calendar.getInstance().getTimeInMillis();
        //Log.d(TAG, "set tm="+when + ", now tm="+now);
 
        if(now - when > 1000)
            throw new IOException("failed to set Date."); 
         
    }