[Index](index.html)
Check the Ionic troubleshooting guide at https://ionicframework.com/docs/troubleshooting/
# Build time
**Error: Cannot find module 'some module'**
Run **yarn install**
Also check the installation docs for any new npm modules which are installed globally with the **-g** flag
## Facebook plugin
Check https://github.com/Wizcorp/phonegap-facebook-plugin/blob/master/TROUBLESHOOTING.md for common issues
### Android
**[javac] warning: ...: major version 51 is newer than 50, the highest major version supported by this compiler.**
Android Studio uses Java6, Building the actual Android project wants JDK7
http://stackoverflow.com/questions/26689513/errorcompilesdkversion-android-21-requires-compiling-with-jdk-7
**Error occured during initialisation of VM**
**Could not reserve enough space for object heap**
**Error: Could not create the Java Virtual Machine**
Add a new Environment Variable called GRADLE_OPTS with a value of -Dorg.gradle.jvmargs=-Xmx512m
### iOS
http://stackoverflow.com/questions/26773783/undefined-symbols-for-architecture-i386-facebook-sdk
**Undefined symbols for architecture i386:**
**"_OBJC_CLASS_$_ASIdentifierManager", referenced from: objc-class-ref in FBAudienceNetwork(FBAdUtility.o) "_OBJC_CLASS_$_CMMotionManager", referenced from: objc-class-ref in FBAudienceNetwork(FBAdAnalogInfo.o) ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)**
Re-add the FacebookSDK.Framework
**ld: symbol(s) not found for architecture i386**
Make sure the project has Social.framework, MessageUI.framework and Security.framework
http://stackoverflow.com/a/18319944/1052084
**Can't find parse/parse.h**
Re-add the Parse.Framework
**'NSUnknownKeyException', reason: '[ setValue:forUndefinedKey:]:**
Don't set the Main Interface drop-down in General -> Deployment Info. Leave it blank!
** /Users/username/Cloneder/platforms/android/res/values/facebookconnect.xml: Error: Found item String/fb_app_id more than one time **
Open */Users/username/Cloneder/platforms/android/res/values/facebookconnect.xml* and remove the duplicate elements
# App Submissions
### iOS
**Error:** "This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data."
**Solution:** Reinstall the cordova camera plugin with the two variables to set the NSPhotoLibraryUsageDescription. See https://github.com/apache/cordova-plugin-camera#--photolibrary_usage_description-for-nsphotolibraryusagedescriptionentry
**Error:** "Missing Push Notification Entitlement - Your app includes an API for Apple's Push Notification service, but the aps-environment entitlement is missing from the app's signature."
**Solution:** Enable the push notification in the Capabilities section in XCode
**Rejection:** "Your app uses Facebook login for authentication purposes but does not include account-based features offered by that site, which is not allowed on the App Store.
In order for Facebook to be the only authentication mechanism available, your app must include significant account-specific functionality from Facebook. Pulling profile information, or sharing, are not sufficient account-based features for Facebook to be the only authentication mechanism available."
**Solution:** If your app asks for information from Facebook (birthdate etc) you have to use it for some functionality.
You will need to give an explanation in the review notes of how you are using the information. See also answers at http://stackoverflow.com/questions/30859085/app-got-rejected-only-using-facebook-as-login-option
# Runtime
**URL blocked by whitelist, or unable to access internet resource**
See https://blog.nraboy.com/2015/05/whitelist-external-resources-for-use-in-ionic-framework/
### Android
**Unknown error code during application install: 505**
or
**INSTALL_FAILED_DUPLICATE_PERMISSION perm=com.myapp.permission.C2D_MESSAGE pkg=com.myapp**
Uninstall and re-install the app.
### iOS
If in the console log when running the iOS you see
**ERROR: Plugin 'Keyboard' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.**
(or instead of Keyboard a different plugin)
First - try removing and adding the cordova plugin
Second - In XCode, goto Build Phases -> open the Compiled Sources dropdown. Click + and add the missing plugin .m file that should be in your Plugins directory (but is missing from the compiled sources).
**ld: 'Cloneder/Plugins/com.phonegap.plugins.ParsePushPlugin/Parse.framework/Parse(PFFieldOperation.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64**
Go in to Build Settings and set Enable Bitcode to No
** {"code":130,"message":"Could not store file."} **
If you get this message the Google App Engine server logs then you may need get the email in your server/service-account-key-prod.json file and add it as a user to the permissions on the Google Cloud Storage bucket.
### Server logs
For production in Google App Engine the logs are in the Logs menu in the Google Cloud Console. Select the sysout or syserr filter.
