First of all, thank you for finally working on this one.
A few comments
1)
I've highlighted in several old forum posts that the new concent is a "breaking change" compared to the old one. I suggested to create a new plugin and deprecate the old one. Now it is somehow "a bit" updated, but a mix of the old and new.. I don't know how this should be handled now. But at the moment the ConsentStatus doesn't work at all.
In the previous SDK you could get:
- ConsentStatus.PERSONALIZED
- ConsentStatus.NON_PERSONALIZED
- ConsentStatus.UNKNOWN
But in the new google consent you can get
- (ConsentStatus.UNKNOWN: Unknown consent status.)
- ConsentStatus.REQUIRED: User consent required but not yet obtained.
- ConsentStatus.NOT_REQUIRED: User consent not required. For example, the user is not in the EEA or the UK.
- ConsentStatus.OBTAINED : User consent obtained. Personalization not defined.
In the plugin at the moment it seems like this doesn't work. When I'm opening my app I get the ConsentStatus "PERSONALIZED" now. This is incorrect, this status does not exist in the SDK and we need to be able to validate the correct ones. When opening the app in EU we should get REQUIRED, and opening the app elsewhere it should be NOT REQUIRED. This is needed to validate if we should show consent window or not.
When I use the event to show to consent window the ConsentStatus changes to UNKNOWN(??)
(I understand you might ned to keep the old stuff to not make old projects crash, but at the moment the plugin doesn't really work)
2)
I cannot get the condition for validating the EEA to work? Have you verified and tested this condition in the new plugin? (For me it seems to be EEA regardless of the location)
3)
I cannot get the ConsentForm to show. I can see in logcat that "getFormStatus" is triggered at startup, but it doesn't show when I use "Show user consent dialog", and not when I set EEA in the properties either. Do you still support to automatically open the consent screen with the properties, or should we always use the "Show.." event now? Regardless, I cannot get any of them to work. (Yes I have Funding Choices set up, and have verified this with other users as well)
4)
I think it would be great if you could add the action to reset the consent (this is good for testing, but also for production to let users reset their choice). It is missing in your C3plugin. github.com/admob-plus/admob-plus/blob/4e72049/packages/cordova-consent/ts/index.ts
5)
When checking logcat it seems you are calling get getConsentStatus twice every time used (on loading plugin, every time you load an ad etc). Is this correctly implemented? Maybe it just looks odd in the logs.. :)
6)
I know you/Scirra did not build this plugin yourself and I really hope you paid Ratson well for using his plugin! :) Even though it's open source. The project needs funding.