Cordova-plugin-googlemaps: iOS XCode - Localization Errors involving "CopyStringsFile" & "pgm_Localizable.strings"

Created on 13 Mar 2018  路  13Comments  路  Source: mapsplugin/cordova-plugin-googlemaps

Problem or Bug Report:
iOS XCode - Localization Errors involving "CopyStringsFile" & "pgm_Localizable.strings"
This issue started very recently, probably due to some localization update.
To ensure that the bug is from this plugin, I created a new project with latest Cordova, iOS Platform.
The error is definitely happening due to the plugin.
Any help much appreciated as I am not able to go around this problem and can't compile any apps with the plugin.

If you choose 'problem or bug report', please select OS: (check one with "x")

  • [ ] Android
  • [x] iOS

cordova information: (run $> cordova plugin list)

Using cordova-fetch for cordova-ios@latest
Adding ios project...
Creating Cordova project for the iOS platform:
    Path: platforms/ios
    Package: com.at1go.Okmaps
    Name: OK Maps
iOS project created with [email protected]
Installed platforms:
  ios 4.5.4

+ [email protected]

No plugins added. Use `cordova plugin add <plugin>`.

Successfully installed cocoapods-1.4.0
Setup completed

cordova plugin add cordova-plugin-googlemaps --variable API_KEY_FOR_ANDROID="XXX" --variable API_KEY_FOR_IOS="XXX"

Installing "cordova-plugin-googlemaps" for ios

apple-ios version check failed 
("/Users/p/Dropbox/www/at1go.com/app/platforms/ios/cordova/apple_ios_version"), continuing anyways.

apple-xcode version check failed ("/Users/p/Dropbox/www/at1go.com/app/platforms/ios/cordova/apple_xcode_version"), continuing anyways.


Installing "com.googlemaps.ios" for ios

            Official document
            https://github.com/mapsplugin/cordova-plugin-googlemaps-doc/blob/master/v2.0.0/README.md

Saved plugin info for "cordova-plugin-googlemaps" to config.xml

Just using cordova plugin add cordova-plugin-googlemaps

Current behavior:
There are 2 version errors while installing the plugin as shown above even though both Cordova and the iOS Platform is latest.

And cannot compile any app including bare bones "Hello World" app with only this plugin because of some localization bugs.

Expected behavior:
App Should compile without problems, which was happening until very recently when some localization features were added to the plugin.

Screen capture or video record:

screen shot 2018-03-13 at 12 21 56 pm

screen shot 2018-03-13 at 11 15 30 am

screen shot 2018-03-13 at 11 16 06 am

screen shot 2018-03-13 at 11 16 38 am

screen shot 2018-03-13 at 11 19 38 am

Related code, data or error log (please format your code or data):

GitHub Project: https://github.com/avishekcode/OKMaps

confirmed fixed

Most helpful comment

Okay, please reinstall the plugin from the multiple_maps branch.
The issue should be gone.

$> cordova plugin rm cordova-plugin-googlemaps

$> cordova plugin add https://github.com/mapsplugin/cordova-plugin-googlemaps.git#multiple_maps --variable ....

All 13 comments

Please share your project files on GitHub in order to reproduce your issue. Don't past your code

Hello,

I just uploaded the project: https://github.com/avishekcode/OKMaps

Also added Screen Shots.

The project is empty apart from just adding the plugin - to help isolate the issue.

Greatly appreciate your hard work and all the help!

Thanks!

Thank you for uploading, but it seems you uploaded wrong files.
I don't need the files platform/ios/ folder.

Please only upload www folder and config.xml file.

What I want to do is to reproduce your issue with normal way.

$> git clone https://github.com/avishekcode/OKMaps

$> cd OKMaps

$> cordova plugin add [email protected] --variable ....

$> cordova build ios

In order to do that, Cordova needs www folder and config.xml file. Not necessary platforms directory on github repository.

Ok, no problem.

Now only www and config.xml in :
https://github.com/avishekcode/OKMaps

Thanks!

Thank you for uploading.

Well, I tried to reproduce the issue, but I have no problem.

masashi-macgms:OKMaps masashi$ cordova plugin add [email protected] --variable API_KEY_FOR_ANDROID="AIzaSyDoGU-q2R8gI3C2YdOheaCLTKl8rHshV9A" --variable API_KEY_FOR_IOS="AIzaSyDoGU-q2R8gI3C2YdOheaCLTKl8rHshV9A"
Installing "cordova-plugin-googlemaps" for ios
Installing "com.googlemaps.ios" for ios

            Official document
            https://github.com/mapsplugin/cordova-plugin-googlemaps-doc/blob/master/v2.0.0/README.md

Adding cordova-plugin-googlemaps to package.json
Saved plugin info for "cordova-plugin-googlemaps" to config.xml


masashi-macgms:OKMaps masashi$ cordova build ios
Building project: /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/OK Maps.xcworkspace
    Configuration: Debug
    Platform: device
User defaults from command line:
    IDEArchivePathOverride = /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/OK Maps.xcarchive

Build settings from command line:
    CONFIGURATION_BUILD_DIR = /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/build/device
    SHARED_PRECOMPS_DIR = /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/build/sharedpch

Build settings from configuration file '/Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/cordova/build-debug.xcconfig':
    CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES
    CODE_SIGN_ENTITLEMENTS = $(PROJECT_DIR)/$(PROJECT_NAME)/Entitlements-$(CONFIGURATION).plist
    CODE_SIGN_IDENTITY = iPhone Developer
    ENABLE_BITCODE = NO
    GCC_PREPROCESSOR_DEFINITIONS = DEBUG=1
    HEADER_SEARCH_PATHS = "$(TARGET_BUILD_DIR)/usr/local/lib/include" "$(OBJROOT)/UninstalledProducts/include" "$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include" "$(BUILT_PRODUCTS_DIR)"
    OTHER_LDFLAGS = -ObjC
    SWIFT_OBJC_BRIDGING_HEADER = $(PROJECT_DIR)/$(PROJECT_NAME)/Bridging-Header.h

=== BUILD TARGET CordovaLib OF PROJECT CordovaLib WITH CONFIGURATION Debug ===

...
...
...
...
...

Touch build/device/OK\ Maps.app.dSYM
    cd /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/Users/masashi/.nvm/versions/node/v7.10.0/bin:/Users/masashi/google-cloud-sdk/bin:/opt/local/bin:/opt/local/sbin:/Users/masashi/.yarn/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/android-sdk/platform-tools:/android-sdk/build-tools:/android-sdk/tools:/opt/minicom/2.2/bin:/usr/local/mysql/bin/:/android-sdk/platform-tools:/android-sdk/tools:/Users/masashi/bin:/android-sdk/ndk-bundle:/android-sdk/ndk-bundle/toolchains:/infer-osx-v0.1.0/infer/infer/bin"
    /usr/bin/touch -c /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/build/device/OK\ Maps.app.dSYM

** ARCHIVE SUCCEEDED **

2018-03-13 12:05:47.989 xcodebuild[8234:81655] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/s9/cxw4wx0x6w5bph8xqvjrnvph0000gn/T/OK Maps_2018-03-13_12-05-47.987.xcdistributionlogs'.
Exported OK Maps.xcarchive to: /Users/masashi/Documents/workspace2/test/OKMaps/platforms/ios/build/device
** EXPORT SUCCEEDED **

masashi-macgms:OKMaps masashi$ 

Hello,

Are you using:

  • X-Code: Version 9.2 (9C40b)
  • cordova-ios@4.5.4
  • cordova@8.0.0
  • cocoapods-1.4.0 // Probably not necessary for this plugin though
    ?

Also instead of using "cordova build ios"
I am going inside the X-Code Project
by opening "OK Maps.xcworkspace"
and then trying to build from there
by pressing the "Play" button.

Greatly appreciate the fast help!

Oh, and you might want to delete your API Keys from the Comment.

I am getting stuck with this error, no matter what project I create:

37351940-8c1f652c-26b2-11e8-8949-59ed0cdc9d53

Thanks!

$> cordova plugin rm cordova-plugin-googlemaps

$> rm -rf node_modules/cordova-plugin-googlemaps

$> rm -rf plugins/cordova-plugin-googlemaps

$> cordova plugin add [email protected] --variable ...

Ah, one more thing. If the previous post way does not work well, try like this:

(option1)
Open the project with Xcode, then please try Product > Clean.

(option2)

$> cordova platform rm ios

$> cordova plugin rm cordova-plugin-googlemaps

$> cordova plugin add cordova-plugin-googlemaps --variable ...

$> cordova platform add ios

Ok, I reproduced the trouble. It looks like one of the localized message file is affected. I have been inspecting.

You are amazing!

I have been scratching my head all day to figure out why it's happening only to me, even though I literally wiped the whole project, deleted everything, and started from creating a new project each time. LOL

I hope you have some good news!

Again, love your beautiful work and appreciate all the help!

Thanks!

Okay, please reinstall the plugin from the multiple_maps branch.
The issue should be gone.

$> cordova plugin rm cordova-plugin-googlemaps

$> cordova plugin add https://github.com/mapsplugin/cordova-plugin-googlemaps.git#multiple_maps --variable ....

Yup!
I tested it a few times.

At first it was showing error again, but I think that was from some sort of Plugin Cache or something.

After I removed both these a few times it worked:
cordova plugin rm cordova-plugin-googlemaps
cordova plugin rm com.googlemaps.ios

Thanks again!

Was this page helpful?
0 / 5 - 0 ratings