Calendar Permissions on a watchface

Hey everybody;
I’m not sure if this is the right forum to post to, apologies if it is not.

I’ve been trying to receive (any kind of) calendar information using either Native Tizen or the Tizen Web Application. For some reason, no matter what I try, I receive PRIVACY_PRIVILEGE_MANAGER_REQUEST_RESULT_DENY_FOREVER when I check the privilege of calendar.read.

What I have done:

I have added the http://tizen.org/privilege/calendar.read permission to the tizen-manifest.xml.

native application:

I a tizen native application based on a sample (AmbientAnalogWatch and multiple others). In this application I’ve imported both calendar.h and

in the main() I call

const char *privilege = "http://tizen.org/privilege/calendar.read";
ppm_request_permission(privilege, ppm_request_response_cb, NULL);

With the definitions

void ppm_request_response_handler(ppm_call_cause_e cause, ppm_request_result_e result, const char *privilege, void *user_data)
{
    dlog_print(DLOG_DEBUG, TAG, "In the ppm_request_response_handler.");
}

typedef void(* ppm_request_response)(ppm_call_cause_e cause, ppm_request_result_e result, const char *privilege, void *user_data);

web application

var readPrivilege = "http://tizen.org/privilege/calendar.read";
        console.log("permission:" + JSON.stringify(tizen.ppm.checkPermission(readPrivilege)));
        if (tizen.ppm.checkPermission(readPrivilege) != "PPM_ALLOW") {
        	console.log("requesting permission");
        	  tizen.ppm.requestPermission(readPrivilege, readRPSuccess, readRPError);
    	} else {
    	  console.log("already allowed!");
    	}

result

each of these results in the deny result:
PRIVACY_PRIVILEGE_MANAGER_REQUEST_RESULT_DENY_FOREVER

This sucks. I have no more ideas what to try, has anybody been able to do this?

Thank you very much in advance for any input!

Best wishes,
Raphael

Hi,
PRIVACY_PRIVILEGE_MANAGER_REQUEST_RESULT_DENY_FOREVER happens when The user denied granting permission to use a privilege for an indefinite period of time.

ppm_request_permission is for ask permission from user to grant any access. If a user makes the decision, it’s modify the privacy policy.
After that the service response as per that decision.
When user press deny from any pop up window, it receives response PRIVACY_PRIVILEGE_MANAGER_REQUEST_RESULT_DENY_ONCE, but If user select ‘Don’t ask again?’ checkbox during deny permission,
it receives PRIVACY_PRIVILEGE_MANAGER_REQUEST_RESULT_DENY_FOREVER. And system saves this. Next time whenever ppm_request_permission
will be called, it will receive PRIVACY_PRIVILEGE_MANAGER_REQUEST_RESULT_DENY_FOREVER every time.

For more details, check here.

Thank you.

1 Like

Hi,
Thank you very much for your response.

On my physical GWA2 device, after installing the application using Tizen Studio, I never got any privilege grant request popup.
To verify this, I created a new clean app with calendar permissions set in the manifest.xml. Should such an access request pop up the first time I open the app? Or is this a systemwide setting that I need to reset somehwere else?

I cannot find any apps on the store that would use the calendar on the watch directly - only ones that need a companion app on the phone. Otherwise I could test the system-wide privilege settings.

Is there any step that I am missing?

Did you add below feature in your manifest.xml?
http://tizen.org/feature/calendar

Hey, I did not know this feature existed (it’s not listed in my Tizen Studio Settings) but I added it regardless.

All in all I:

  • reset my watch
  • reinstalled Tizen Studio
  • reapproved sdb connection
  • created a new tizen web project
  • added the feature/calendar, privilege/calendar.read and privilege/calendar.write to manifest
  • called the same process from the OP
  • Started debugging process

Result

permission: "PPM_DENY"
request:  "PPM_DENY_FOREVER"

Note, that I never got any prompt from the watch to allow the permission request. The watchface simply installed.

Question

Is there anything else I am missing?

If you are trying to access calendar information on a watch face, that is currently not available. I’m also waiting for that feature to come and they are talking about new features release towards the end of the year.