Comments (4)
I can say with almost certaintly that your problem is you have an outdated version of the Cordova CLI. You can confirm this by simply typing cordova -v
. If the version is any less than 5.0.0, there's your problem. To update to the most recent version, use npm install -g cordova
.
Since version 5.0.0, cordova has switched to use npmjs as its plugin registry, but earlier versions (3.x-4.x) still use the now deprecated Cordova Plugin Repository as the primary plugin registry. The Cordova Plugin Repository is now immutablable (read-only) which means that any plugins on there are likely to be out-of-date, including this one. The last version of cordova.plugins.diagnostic
published here was v1.1.0. Whereas the version on npmjs is now v2.1.0.
Note that in v2.1.0, cordova.plugins.diagnostic.isLocationEnabled()
returns true on Android if GPS or network location (Wifi/cell triangulation) is enabled. To specifically test if GPS is enabled, use cordova.plugins.diagnostic.isGpsLocationEnabled()
On iOS, it is not possible to differentiate between GPS and network location providers, so cordova.plugins.diagnostic.isLocationEnabled()
returns true if Location Services is enabled and the app has been authorized to use location.
from cordova-diagnostic-plugin.
Thanks for your reply. I really wish your guess it true, then I can resolve this problem quick.
The android version of my app works perfectly now, but the iOS version of app still have problem.
Let's assume my local env is broken, the phonegap build should be fine, right? As I mentioned earlier, my iOS app is built in phonegap clould platform, so I assume the version should not be the problem as I used <gap:plugin name="cordova.plugins.diagnostic" source="npm" /> in my config.xml(I cannot confirm the version since the build log does not show me the version)
Right now, the cordova.plugins.diagnostic.isLocationEnabled is fine in iOS, but the cordova.plugins.diagnostic object does not have switchToSettings function 0.O
Do you still suspect the plugin version is the problem or do you have a second thought?
Thanks.
from cordova-diagnostic-plugin.
If cordova.plugins.diagnostic.switchToSettings()
is not defined, then it's almost certain you're including an old version of the plugin. I've no experience with Phonegap Build (I build everything locally), but you should make sure you're specifying npm as the plugin repository:
<gap:plugin name="cordova.plugins.diagnostic" source="npm" />
and not Cordova Plugin Repository:
<gap:plugin name="cordova.plugins.diagnostic" source="plugins.cordova.io" />
from cordova-diagnostic-plugin.
Can this be closed?
from cordova-diagnostic-plugin.
Related Issues (20)
- IOS - isCameraRollAuthorized return "[NSNull isEqualToString:]: unrecognized selector sent to instance" HOT 1
- When installing with lerna no dependency is added
- getBluetoothAuthorizationStatus wrong example HOT 2
- Workaround for Location Auth Status being DENIED_ALWAYS HOT 2
- isRequestingPermission() Always returns false for location
- Support Android 13/API 33 media storage permissions HOT 3
- Permission error HOT 1
- getExternalSdCardDetails for android 13 HOT 2
- No working POST_NOTIFICATIONS HOT 3
- getLocationAuthorizationStatus not working on android 13 with ionic cordova production builds HOT 1
- getBluetoothState() returns OK in SDK 33 even though bluetooth is not enabled/disabled HOT 1
- Android build Error HOT 2
- Storage permission Issue on Android after updating to API 33 HOT 2
- Android Permission for Notification asking in Runtime in Android 13 HOT 1
- cordova diagnostic plugin requestExternalStorageAuthorization is returning DENIES_ALWAYS HOT 1
- Android < 13 ACCESS_BACKGROUND_LOCATION is automatically granted despite it's not true HOT 1
- Specifying modules issue HOT 5
- USB debugging detection is bypassed using the FRIDA tool and some other Root management apps
- requestCalendarAuthorization() always returns DENIED_ALWAYS HOT 2
- Health Connect Authorization
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cordova-diagnostic-plugin.