Problem
The generated Android bridge exposes craft.location, but does not expose craft.permissions. As a result, @stacksjs/mobile permissions.check('location') and permissions.request('location') fall back to WebView geolocation, which reports denied even when Android location permissions have already been granted.
Reproduction
- Build a Craft Android app with
geolocation: true. - Add the shared STX
<NativePermissionButton permission="location" />. - Launch with Android location permissions granted.
- Tap the button.
The button remains denied and offers Settings. The same app can access the native craft.location bridge.
Expected
Expose craft.permissions.check, request, and openSettings from the Android bridge, or have the mobile runtime detect craft.location for location permission state. This lets shared STX permission controls use native Android permission state consistently.