Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple maps #3

Open
wants to merge 1,274 commits into
base: multiple_maps
Choose a base branch
from
Open
Changes from 29 commits
Commits
Show all changes
1274 commits
Select commit Hold shift + click to select a range
e1cf21c
changing BaseArrayClass implementation
wf9a5m75 Oct 29, 2018
227fe68
fix: eslint error
wf9a5m75 Oct 29, 2018
fbb65ab
wip: creating test for BaseArrayClass
wf9a5m75 Oct 29, 2018
d3b5af2
prevent crash over Android 9 (#2490)
wf9a5m75 Oct 29, 2018
a593bc9
create tests for BaseArrayClass
wf9a5m75 Oct 29, 2018
c462749
update: BaseArrayClass.spec.js
wf9a5m75 Oct 30, 2018
ac485ca
Bug fix: BaseArrayClass
wf9a5m75 Oct 30, 2018
44692f6
Update: BaseClass test case
wf9a5m75 Oct 30, 2018
ec987d6
Add a custom resolver so that we can require our own project files
adamduren Nov 12, 2018
110475f
Merge pull request #2500 from adamduren/testable-browser-plugins
wf9a5m75 Nov 12, 2018
d3db05a
fixed marker drop animation on ios
jjdii Nov 16, 2018
0774b5e
Merge pull request #2505 from jjdii/multiple_maps
wf9a5m75 Nov 17, 2018
43295ef
Fix invalid JSON for locale "da", fix typo for locale "de"
Dec 5, 2018
1826917
Merge pull request #2520 from chriz-hoepfner/bugfix/localization-issu…
wf9a5m75 Dec 5, 2018
3fcac34
Bug fix: markercluster.remove() does not work on browser platform #2504
wf9a5m75 Dec 20, 2018
b3dc42c
Remove FusionTable layer code because FusionTable is deprecated.
wf9a5m75 Dec 20, 2018
ec741f4
Fix: Street View: App crashes if no panorama available for the target…
wf9a5m75 Dec 20, 2018
66d4fee
Fix: indent error of eslint
wf9a5m75 Dec 21, 2018
538768a
(iOS) Prevent "http://localhost:8080/.//assets/hogehoge.png"
wf9a5m75 Dec 21, 2018
560d18e
Improve animateCamera() of browser platform
wf9a5m75 Dec 30, 2018
6d29033
Fix: MarkerCluster of v2.5.0 does not work
wf9a5m75 Jan 1, 2019
4d16964
Prevent undefined error
wf9a5m75 Jan 3, 2019
4beb634
Update js_CordovaGoogleMaps-for-android_ios.js
wf9a5m75 Jan 4, 2019
b5c2cbe
Fix: map.addKmlOverlay throw "self.map.addMarker(...).then is not a f…
wf9a5m75 Jan 17, 2019
0d8a85b
Fix: eslint errors
wf9a5m75 Jan 17, 2019
5f83d30
Bug fixes
wf9a5m75 Jan 18, 2019
8757d1c
Fix: can not load data from "http://localhost:8080" on ionic (Fuck io…
wf9a5m75 Jan 24, 2019
06c566f
update version.
wf9a5m75 Jan 24, 2019
22bde8f
Fix: can not tap on HTMLInfoWindow on iOS
wf9a5m75 Jan 25, 2019
0eeb35c
update README.md
wf9a5m75 Jan 25, 2019
3f6ce0f
Merge branch 'multiple_maps'
wf9a5m75 Jan 25, 2019
e096a89
Change version ID
wf9a5m75 Jan 25, 2019
87f286a
Travis test
wf9a5m75 Jan 25, 2019
4aee004
Remove flag for travis test
wf9a5m75 Jan 25, 2019
6bcef54
Fix: MarkerCluster: -----> This is remained cluster icon (#2553)
wf9a5m75 Feb 6, 2019
5a6d287
Fix: eslint error
wf9a5m75 Feb 6, 2019
4ef4e5c
update: (iOS) WkWebView displays black background when you use map.se…
wf9a5m75 Feb 10, 2019
f372f4f
- (browser) plugin does not read pereferences.zoom.minZoom correctly
wf9a5m75 Feb 14, 2019
1053a2f
Fix: (iOS) HTML click detection is incorrect.
wf9a5m75 Feb 18, 2019
67c5619
Comment out debug code
wf9a5m75 Feb 18, 2019
bb30aa0
(Android/iOS) Fix: Clicking on POI with an apostrophe in its name cau…
wf9a5m75 Feb 18, 2019
59f3790
(Android/iOS) Fix: Clicking on POI with an apostrophe in its name cau…
wf9a5m75 Feb 18, 2019
27abb2d
Merge branch 'multiple_maps' of https://github.com/mapsplugin/cordova…
wf9a5m75 Feb 18, 2019
be1ad34
(Browser) Fix: tiny bug
wf9a5m75 Feb 18, 2019
ccf7c10
(JS) Fix: Marker issues when using MarkerCluster (icon color won't ch…
wf9a5m75 Feb 18, 2019
c8755c5
Comment out debug code
wf9a5m75 Feb 18, 2019
5fe52cb
Bump up to v2.5.1
wf9a5m75 Feb 18, 2019
9148cb0
Fix: (Android/iOS/Browser) MarkerCluster.remove() causes null pointer…
wf9a5m75 Feb 19, 2019
25d1d31
- (iOS) update: cordova-plugn-status bar brings troubles a lot.
wf9a5m75 Feb 20, 2019
cfeec7f
(Android) Fix: setMyLocationEnabled(false) does not work (#2567)
wf9a5m75 Feb 28, 2019
200c5b7
Update: readme.md
wf9a5m75 Feb 28, 2019
19f1772
Bump up to v2.5.2
wf9a5m75 Feb 28, 2019
49a277c
Fix: cordova-plugin-statusbar problem #2568
wf9a5m75 Mar 5, 2019
c883868
Fix: click problem on iOS #2568
wf9a5m75 Mar 5, 2019
e3aad29
update README.md
wf9a5m75 Mar 5, 2019
ad8c27d
Fix missing data part in toDataURL
Mike1707 Mar 8, 2019
0ca0ed8
Merge pull request #2574 from Mike1707/fix-todataurl
wf9a5m75 Mar 11, 2019
df72a9d
Remove duplicated lines
wf9a5m75 Mar 18, 2019
38dcc23
Bump up to v2.5.3
wf9a5m75 Mar 18, 2019
4be3c19
Cordova 9 support #2581
wf9a5m75 Mar 20, 2019
45ef8ba
Fix: eslint error
wf9a5m75 Mar 20, 2019
f151ffa
updated requireCordovaModule to require for non-cordova modules (Supp…
Mar 25, 2019
bee92b2
Merge pull request #2586 from hobbydevs/multiple_maps
wf9a5m75 Mar 28, 2019
058ae40
Fix: cordova 9 #2581 #2592
wf9a5m75 Apr 4, 2019
c54b4c4
Update PluginPolygon.java
TdoubleG Apr 11, 2019
2c7ff37
Update PluginPolygon.java
TdoubleG Apr 12, 2019
bc7116f
fix: CordovaGoogleMaps `onStop()` calls `super.onStart()` #2603
wf9a5m75 Apr 15, 2019
d500b29
Merge pull request #2600 from adappter/master
wf9a5m75 Apr 15, 2019
e7ef969
Update PluginPolygon.java #2600
wf9a5m75 Apr 15, 2019
17e4220
Add log history #2595
wf9a5m75 Apr 15, 2019
76e7731
Google Maps SDK for IOS 3.0.3 was released #2594
wf9a5m75 Apr 15, 2019
e4070cd
Patches for crash possibility points #2569
wf9a5m75 Apr 15, 2019
0ea14d4
update README.md
wf9a5m75 Apr 15, 2019
ec8dbfa
Fix: (Android/iOS) can't load image files on addTileOverlay with ionic3
wf9a5m75 Apr 16, 2019
b728239
Update: (ios) Google Maps SDK for IOS 3.1.0
wf9a5m75 Apr 18, 2019
d604840
Update: (ios) Google Maps SDK for IOS 3.1.0
wf9a5m75 Apr 18, 2019
90390e8
Merge branch 'multiple_maps' of https://github.com/mapsplugin/cordova…
wf9a5m75 Apr 18, 2019
f425d34
Implement API key system
wf9a5m75 Apr 18, 2019
01288a4
Find the pgm.properties file recersively
wf9a5m75 Apr 18, 2019
bfc7dbe
test
wf9a5m75 Apr 18, 2019
42e1502
test
wf9a5m75 Apr 18, 2019
ba2aacc
Update plugin.xml
wf9a5m75 Apr 18, 2019
c5e663f
(Android)Read API key from config.xml file
wf9a5m75 Apr 18, 2019
0c53d54
Add: (ios) implement apikey mechanism for ios
wf9a5m75 Apr 19, 2019
aa0eb41
Merge branch 'property_test' into multiple_maps
wf9a5m75 Apr 19, 2019
fe97e12
Remove debug/release switcher
wf9a5m75 Apr 19, 2019
08fe9fb
Update README.md
wf9a5m75 Apr 19, 2019
07493dd
Merge branch 'property_test' into multiple_maps
wf9a5m75 Apr 19, 2019
75c931c
Bump up to v2.6.0
wf9a5m75 Apr 19, 2019
046ad6b
Modify README.md
wf9a5m75 Apr 19, 2019
56bba9f
Merge branch 'multiple_maps'
wf9a5m75 Apr 19, 2019
3eb98be
Remove --plugin argument
wf9a5m75 Apr 19, 2019
71e7df4
Specify --plugin argument
wf9a5m75 Apr 19, 2019
55cfba3
Adjust test code
wf9a5m75 Apr 19, 2019
e987436
Adjust test code for iOS
wf9a5m75 Apr 20, 2019
a6f648b
Specify cordova@9 for travis
wf9a5m75 Apr 20, 2019
f4d195d
Adjust for travis
wf9a5m75 Apr 20, 2019
6113d2b
Adjust for travis
wf9a5m75 Apr 20, 2019
2cb8a7c
Bug fix: (iOS) App terminated by GMSThreadException when marker url i…
wf9a5m75 Apr 23, 2019
c69860a
Fix: conflict with OneSignal-Cordova-SDK
wf9a5m75 Apr 23, 2019
a5155cd
Install Google Maps SDK for iOS v2.7.0 to ios@4.4, v3.1.0 to ios@5.x …
wf9a5m75 Apr 23, 2019
dda5bd1
Wraps for the code have crash possibility
wf9a5m75 Apr 24, 2019
13487df
Merge branch 'multiple_maps'
wf9a5m75 Apr 25, 2019
48a8aaf
Bump up to v2.6.1
wf9a5m75 Apr 25, 2019
9bc407b
Adjust .travis.yml
wf9a5m75 Apr 25, 2019
b5530c9
Adjust .travis.yml
wf9a5m75 Apr 25, 2019
ba01066
Adjust .travis.yml
wf9a5m75 Apr 25, 2019
c9c195e
Adjust .travis.yml
wf9a5m75 Apr 25, 2019
5957846
Adjust .travis.yml
wf9a5m75 Apr 25, 2019
d8f5217
Fix: Error compiling v2.6.1 on Android #2610
wf9a5m75 Apr 25, 2019
b200fea
Bump up to v2.6.2
wf9a5m75 Apr 25, 2019
4b25bcc
Fix: .travis.yml does not trigger travis action
wf9a5m75 Apr 25, 2019
c8ae01a
Catch up master branch
wf9a5m75 Apr 25, 2019
48e0795
update docs version to 2.6.0 in plugin.xml
ziyaddin Apr 29, 2019
31655a0
Merge pull request #2611 from ziyaddin/fix/docs-link-version
wf9a5m75 Apr 29, 2019
64fff8a
Update plugin.xml
wf9a5m75 May 2, 2019
cf957de
changed 'display: none' to 'display: inline-block' within the refresh…
May 21, 2019
0ff0c9a
Merge pull request #2618 from cmartin88/prevent-animation-reset-on-re…
wf9a5m75 May 23, 2019
e692ec4
Fix: HTMLColor2RGBA() converts to incorrect value
wf9a5m75 Jun 15, 2019
4851b1b
Update KmlLoader.js
wf9a5m75 Jun 15, 2019
889e050
(iOS) bug fix: App crashes if "bearing" property is "<null>" #2644
wf9a5m75 Jun 15, 2019
e875ed8
Use single quote
wf9a5m75 Jun 15, 2019
bc2fe7a
Update Danish translations
eikooc Jul 30, 2019
8955605
Remove promise-7.0.4-min.js.map
wf9a5m75 Jul 31, 2019
bb21426
Use Google Maps SDK
wf9a5m75 Jul 31, 2019
d8f642f
debug
wf9a5m75 Jul 31, 2019
1192ede
test for phonegap build
wf9a5m75 Jul 31, 2019
12544a6
test for phonegap build
wf9a5m75 Jul 31, 2019
c343b5b
test for phonegap build
wf9a5m75 Jul 31, 2019
397e8ff
Fix: API key is not replaced
wf9a5m75 Jul 31, 2019
491d4a8
Fix: An error occurs when you click a marker of marker cluster #2660
wf9a5m75 Aug 1, 2019
b704923
Fix: touch detection is wrong after clicking on back button very soon.
wf9a5m75 Aug 1, 2019
cda04a1
Fix: lint error #2660
wf9a5m75 Aug 1, 2019
60c6d15
Translate the Polish values to Danish
eikooc Aug 6, 2019
af974f9
Set default value range to heading and tilt
wf9a5m75 Aug 8, 2019
9929d3d
If developer sets {x, y} to marker.anchor, convert to [x, y] internally
wf9a5m75 Aug 8, 2019
d77839e
possibly fix: prevent `undefined is not an object` error.
wf9a5m75 Aug 8, 2019
00bc3c8
Fix: jslint error
wf9a5m75 Aug 10, 2019
125754d
Replace absolute path of URL for ionic 5
wf9a5m75 Aug 10, 2019
7104fac
fix: can not intractive with the map inside <form>
wf9a5m75 Aug 14, 2019
ab684af
Fix null exception
ebhsgit Sep 16, 2019
b790eac
Merge branch 'master' of https://github.com/8bhsolutions/cordova-plug…
wf9a5m75 Sep 16, 2019
8baee36
Update pgm_Localizable_da.json
wf9a5m75 Sep 16, 2019
31e4352
Update pgm_Localizable_da.json
wf9a5m75 Sep 16, 2019
c00530b
Merge branch 'master' of https://github.com/eikooc/cordova-plugin-goo…
wf9a5m75 Sep 16, 2019
00ca886
t push origin multiple_mapsMerge branch 'eikooc-master' into multiple…
wf9a5m75 Sep 16, 2019
f1508e9
Increase cache memory size for #2678
wf9a5m75 Sep 18, 2019
1dbcd49
- Add: stopAnimation()
wf9a5m75 Sep 30, 2019
35cde53
fix: can't click buttons on the Cordova wheel dialog #2676
wf9a5m75 Sep 30, 2019
aae44a7
fixed flickering and wrong rendering of some dom elements
tomaz-dev Oct 7, 2019
2a249f5
Merge pull request #2691 from tomaz-dev/patch-1
wf9a5m75 Oct 7, 2019
d87c30b
Fix: can't parse sample kml file
wf9a5m75 Oct 11, 2019
a039a77
Possible patch #2689
wf9a5m75 Oct 11, 2019
6af2829
Revert 125754d
wf9a5m75 Oct 11, 2019
4e55441
Patch for #2685
wf9a5m75 Oct 11, 2019
89dee67
Comment out <framework tag> for Cordova 8.x CLI or older versions
wf9a5m75 Oct 11, 2019
7acd753
update version numbers
wf9a5m75 Oct 11, 2019
268e552
Update AsyncLoadImage.java
wf9a5m75 Oct 11, 2019
c96fcd4
Can't load file on ionic 5
wf9a5m75 Oct 16, 2019
42a84d0
(iOS) Can't load local tile image files
wf9a5m75 Oct 16, 2019
5367a11
update: version number
wf9a5m75 Oct 16, 2019
daddb2d
Go back to dependency plugin.
wf9a5m75 Oct 16, 2019
f416e2f
comment out hooks/ios
wf9a5m75 Oct 16, 2019
5cef5ab
prepare for v2.7.0
wf9a5m75 Oct 16, 2019
b48c7b5
Use an actual semaphore to manage the cleanup and always release the …
Oct 23, 2019
8764f0a
Bug fix: can't load icon image from the Internet
wf9a5m75 Nov 5, 2019
93bfdbb
Update plugin.xml
wf9a5m75 Nov 5, 2019
094e719
Update package.json
wf9a5m75 Nov 5, 2019
41f0e03
Update README.md
wf9a5m75 Nov 5, 2019
dff1429
Fix: can't load marker image
wf9a5m75 Nov 7, 2019
a7f6bcc
Update Marker.js
wf9a5m75 Nov 7, 2019
e9cd51f
Update Map.js
wf9a5m75 Nov 7, 2019
aa1f418
Fix: JsLint Error
wf9a5m75 Nov 7, 2019
398052b
bump up version numbers
wf9a5m75 Nov 7, 2019
9446e27
fix: cannot load marker cluster image
HansKrywalsky Nov 24, 2019
15280cb
fix: linting
HansKrywalsky Nov 24, 2019
305e34c
Update links for the versions v2.6.x
Matheus-de-Souza Nov 25, 2019
9f94375
Merge pull request #2706 from Matheus-de-Souza/patch-1
wf9a5m75 Nov 25, 2019
0e70ca8
Fix two js error when change very quickly between two pages with map
goinnn Oct 21, 2019
435af5d
Fix indent code
goinnn Dec 16, 2019
b0bf0cd
Fix null exception
ebhsgit Dec 24, 2019
02e4463
Merge pull request #2694 from JordyLangen/bugfix/plugin_marker_cleanu…
wf9a5m75 Jan 30, 2020
eb64c4e
Merge pull request #2728 from we-are-Joinup/fixing-js-change-quickly-…
wf9a5m75 Jan 30, 2020
af784c6
Merge pull request #2705 from HansKrywaa/marker_cluster_icons
wf9a5m75 Jan 30, 2020
68d4bfc
fix: Null-Pointer-Exception
EinfachHans Mar 8, 2020
55f4863
fix: #2689 Android - NullPointerException on AsyncLoadImage
mcastets Mar 8, 2020
55b5cc6
feat: Add compile-time decision for disabling UIWebView
EinfachHans Mar 9, 2020
1634542
refactored changes
EinfachHans Mar 9, 2020
d9d70be
removed UiWebViewCode and only use WkWebView
EinfachHans Mar 10, 2020
6005e22
fixed exception
EinfachHans Mar 10, 2020
07fc55d
removed webViewDidFinishLoad
EinfachHans Mar 10, 2020
cecf26d
use Iterator
EinfachHans Mar 10, 2020
4699b13
Merge pull request #2754 from HansKrywaa/fix-exception
wf9a5m75 Mar 29, 2020
acd58cf
Update CordovaGoogleMaps.js
wf9a5m75 Mar 29, 2020
1b78976
Merge branch 'ui-web-view' of https://github.com/HansKrywaa/cordova-p…
wf9a5m75 Mar 29, 2020
3931b78
Merge branch 'HansKrywaa-ui-web-view' into multiple_maps
wf9a5m75 Mar 29, 2020
08a91cf
Bump up the minimum requirement
wf9a5m75 Mar 29, 2020
7431e61
Merge pull request #2750 from 4sh/fix-2712
wf9a5m75 Mar 29, 2020
bef4dd6
Merge pull request #2729 from 8bhsolutions/PR_null_exception_marker_a…
wf9a5m75 Mar 29, 2020
7bd26d6
Merge pull request #2749 from HansKrywaa/fix-null-pointer
wf9a5m75 Mar 29, 2020
de0c410
prepare for v2.7.0
wf9a5m75 Mar 31, 2020
5a40e75
Fix: UiWebView references present in v2.7.0 #2762
wf9a5m75 Apr 9, 2020
079036a
- Add: (Android/iOS/Browser) `mapOptions.preferences.gestureBounds`
wf9a5m75 Apr 30, 2020
458d2df
still working on.
wf9a5m75 May 2, 2020
14f2e93
still working on
wf9a5m75 May 3, 2020
b0f9c23
still working on
wf9a5m75 May 3, 2020
fb024dc
still working on
wf9a5m75 May 6, 2020
017f088
still working on
wf9a5m75 May 6, 2020
de34efa
Bug fix: #fff does not become white
wf9a5m75 May 7, 2020
202c3dc
Map.setOptions() return a promise
wf9a5m75 May 7, 2020
ba43921
still working on
wf9a5m75 May 7, 2020
47fecab
- fix: (Android) mapOptions.camera.padding does not work on map.setOp…
wf9a5m75 May 8, 2020
02efa09
still working on
wf9a5m75 May 8, 2020
6b1b5da
still working on
wf9a5m75 May 8, 2020
a0f25c5
still working on
wf9a5m75 May 8, 2020
c680247
- Bug fix (android / iOS) zIndex does not work
wf9a5m75 May 9, 2020
e4297e4
Fix (Android) : mapOptions.camera does not work correctly
wf9a5m75 May 10, 2020
640101c
still working on DirectionsRenderer
wf9a5m75 May 11, 2020
7ea6cf9
still working on DirectionsRenderer
wf9a5m75 May 12, 2020
f51c21a
Fix: #2774 (browser)
wf9a5m75 May 14, 2020
8773ab3
still working on DirectionsRenderer
wf9a5m75 May 19, 2020
77ec241
still working on DirectionsRenderer
wf9a5m75 May 19, 2020
162521f
No longer ANDROID_SUPPORT_V4_VERSION option is necessary
wf9a5m75 May 19, 2020
7242938
still working on DirectionsRenderer
wf9a5m75 May 19, 2020
9a5490c
Fix: mapOptions.preferences
wf9a5m75 May 19, 2020
12fb9cf
still working on
wf9a5m75 May 19, 2020
a75dac2
Fix: map.preferences.restriction
wf9a5m75 May 19, 2020
73adf5a
(Android / iOS / browser) Add: Ability to change clickability of POI …
wf9a5m75 May 20, 2020
aee5f5b
Update: README.md
wf9a5m75 May 20, 2020
a2bab10
(Android) Fix: some property remains #2778
wf9a5m75 May 20, 2020
31116c4
Remove debug code
wf9a5m75 May 20, 2020
210b68f
(Android / iOS) Bug fix: Can not interactive with map after `map.off()`
wf9a5m75 May 20, 2020
93e3e53
(Android) bug fix: can not reset the `zoom` and `restriction` paramet…
wf9a5m75 May 20, 2020
e6342dd
Hide `__pluginDomId` and `__pluginMapId`
wf9a5m75 May 22, 2020
f722b9e
Remove tile aggressively.
wf9a5m75 May 23, 2020
ae9f15f
revert the commit
wf9a5m75 May 23, 2020
be85b94
Use `Maps SDK for Android v.3` instead of Google Play Services
wf9a5m75 May 29, 2020
3f47931
Revert "Use `Maps SDK for Android v.3` instead of Google Play Services"
wf9a5m75 May 29, 2020
885d8e5
Revert "Revert "Use `Maps SDK for Android v.3` instead of Google Play…
wf9a5m75 May 29, 2020
76055d3
still working on
wf9a5m75 May 30, 2020
c4df91b
Automatic switch dependencies for androidx
wf9a5m75 May 30, 2020
3fc504a
update version number
wf9a5m75 May 30, 2020
8cd0c25
Use cordova-androidx-build as dependency plugin
wf9a5m75 May 30, 2020
a9088cf
(Android) bug fix: Possible issue with map hit testing
wf9a5m75 Jun 1, 2020
2616d16
Fix: __pluginDomID causes error
wf9a5m75 Jul 2, 2020
f02aabf
Use "Maps SDK for Android v.3.1.0 BETA"
wf9a5m75 Jul 9, 2020
41f1be6
(iOS) Bug fix: View hierarchy does not work correctly
wf9a5m75 Jul 9, 2020
f6bef6d
Bug fix: map.setDiv() tries to change value of a readonly property #2809
wf9a5m75 Jul 10, 2020
9598dc4
Small bug fixes
wf9a5m75 Jul 10, 2020
2cdc896
Update PluginMap.java
wf9a5m75 Aug 17, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
92 changes: 27 additions & 65 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Cordova GoogleMaps plugin for Android, iOS and Browser v2.5.3
# Cordova GoogleMaps plugin for Android, iOS and Browser v2.6.0

| Download | Build test (master branch)|
|----------|---------------------------|
@@ -39,32 +39,24 @@

- *Stable version(npm)*
```
$> cordova plugin add cordova-plugin-googlemaps \
--variable API_KEY_FOR_ANDROID="..." \
--variable API_KEY_FOR_IOS="..."
$> cordova plugin add cordova-plugin-googlemaps
```

- *Development version(beta version)*
```
$> cordova plugin add https://github.com/mapsplugin/cordova-plugin-googlemaps#multiple_maps \
--variable API_KEY_FOR_ANDROID="..." \
--variable API_KEY_FOR_IOS="..."
$> cordova plugin add https://github.com/mapsplugin/cordova-plugin-googlemaps#multiple_maps
```

## PhoneGap Build settings

```xml
<widget ...>
<plugin name="cordova-plugin-googlemaps">
<variable name="API_KEY_FOR_ANDROID" value="(api key)" />
<variable name="API_KEY_FOR_IOS" value="(api key)" />
</plugin>

<!--
You need to specify cli-7.1.0 or greater version.
https://build.phonegap.com/current-support
-->
<preference name="phonegap-version" value="cli-8.0.0" />
<preference name="phonegap-version" value="cli-8.1.1" />
</widget>
```

@@ -113,7 +105,22 @@
$> cordova run (browser/android/ios) -- --live-reload
```

### API key

### API key (Android and iOS platforms)

From v2.6.0, you need to specify your API keys in `config.xml` file instead of `--variable`.
This allows you to change your API keys for anytime without reinstallation.

Please pay attention the variable names are changed.

```xml
<widget ...>
<preference name="GOOGLE_MAPS_ANDROID_API_KEY" value="(api key)" />
<preference name="GOOGLE_MAPS_IOS_API_KEY" value="(api key)" />
</widget>
```

### API key (Browser platform)

In the browser platform, the maps plugin uses [Google Maps JavaScript API v3](https://developers.google.com/maps/documentation/javascript/)

@@ -197,55 +204,13 @@
---------------------------------------------------------------------------------------------------------

## Release Notes
- **v2.5.3**
- Fix: (iOS) touch problem
- Fix: (iOS) `toDataURL()` bug

- **v2.5.2**
- Fix: (Android/iOS/Browser) MarkerCluster.remove() causes null pointer error.
- Fix: (iOS) touch problem
- Fix: (Android) setMyLocationEnabled(false) does not work

- **v2.5.1**
- Fix: (Android/iOS/Browser) Marker cluster does not work when you zoom in.
- Fix: (iOS) HTML click detection is incorrect.
- Fix: (Android/iOS) Clicking on POI with an apostrophe in its name causes a SyntaxError.
- Fix: (Browser) Can not set icon color for marker cluster icons.

- **v2.5.0**
- Add: (Android/iOS/Browser) Support `promise` for `TileOverlayOptions.getTile`. You must return new URL in 5 seconds.
```js
var tileOverlay = map.addTileOverlay({
getTile: function(x, y, zoom) {
return new Promise(function(resolve, reject) {
somethingAsync(function(url) {
resolve(url);
});
});
}
});
```

- Add: (Android/iOS/Browser) `BaseClass.onThrottled()/addThrottledEventListener()/hasEventListener()` are added.
```js
var marker = map.addMarker({ ... });
marker.onThrottled('position_changed', function(latLng) {
console.log(latLng);
}, 1000);
```

- Add: (Android/iOS/Browser) `TileOverlayOptions.getTile` can return **base64 encoded image(png,gif,jpeg)**.
- Fix: (Android) Can not load icon image file for Marker after external link opened.
- Fix: (Browser) `MapOptions.styles` does not work.
- Fix: (Android) `map.setOptions()` asks location permission always even options do no include `myLocation` and/or `myLocationButton` options.
- Update: (Android) Set `transparent` backgroundColor at `onResume()` because some other plugins change background color.
- Update: (Android/iOS) Improve accuracy of touch detection on geodesic polyline.
- Update: (iOS) Remove "NSData+Base64" library. No longer necessary.
- Update: (js) ionic 4 hides Google Maps view.
- Fix: (Browser) `MarkerCluster.remove()` does not work on browser platform.
- Fix: (Android/iOS/Browser) App crashes (or error) if no panorama available.
- Fix: (Android/iOS/Browser) `INFO_CLICK` does not work on marker cluster.
- Fix: (iOS) Can not click on HtmlInfoWindow.
- **v2.6.0**
- Fix: Can not install to Cordova 9.0 project
- Fix: (Android) `ConcurrentModificationException` error at `onStop`
- Fix: (Android) Polygon becomes visible when you run `setPoints()` to invisible polygon
- Fix: (Android/iOS) TileOverlay does not work when your app runs on `file:` protocol with ionic.
- Update: (iOS) Specify the Google Maps SDK version as `=> 3.1.0`. Please use `cordova-ios@5.0.0` or above, otherwise modify `platform/ios/Podfile`.
- Add: (Android/iOS) API Key mechanism

---------------------------------------------------------------------------------------------------------

@@ -532,9 +497,6 @@ This means **you can use the native Google Maps views similar to HTML elements**

---------------------------------------------------------------------------------------------------------
## Official Communities
- Google+ : (managed by @wf9a5m75)

https://plus.google.com/communities/117427728522929652853

- Gitter : (managed by @Hirbod)

2 changes: 1 addition & 1 deletion build_test.sh
Original file line number Diff line number Diff line change
@@ -16,5 +16,5 @@ if [[ ${TRAVIS_BRANCH} == "master" ]]; then
fi

if [ ${DO_BUILD} -eq 1 ]; then
cordova-paramedic --verbose --platform ${CORDOVA_PLATFORM} --justBuild --plugin '. --variable API_KEY_FOR_ANDROID=test --variable API_KEY_FOR_IOS=test';
cordova-paramedic --verbose --platform ${CORDOVA_PLATFORM} --justBuild --plugin;
fi
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "cordova-plugin-googlemaps",
"version": "2.5.3",
"version": "2.6.0",
"description": "Google Maps native SDK for Android and iOS, and Google Maps JavaScript API v3 for browser.",
"cordova": {
"id": "cordova-plugin-googlemaps",
21 changes: 7 additions & 14 deletions plugin.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
<plugin id="cordova-plugin-googlemaps" version="2.5.3" xmlns="http://apache.org/cordova/ns/plugins/1.0" xmlns:android="http://schemas.android.com/apk/res/android">
<plugin id="cordova-plugin-googlemaps" version="2.6.0" xmlns="http://apache.org/cordova/ns/plugins/1.0" xmlns:android="http://schemas.android.com/apk/res/android">
<name>cordova-plugin-googlemaps</name>
<js-module name="Promise" src="www/Promise.js" />
<asset src="www/promise-7.0.4.min.js.map" target="promise-7.0.4.min.js.map" />
@@ -124,18 +124,13 @@

<engines>
<engine name="cordova" version=">=7.0.0" />
<engine name="cordova-ios" version=">=5.0.0" />
<engine name="apple-xcode" version=">=9.0.0" />
<engine name="apple-ios" version=">=10.0.0" />
</engines>

<hook type="before_plugin_add" src="src/before_plugin_install.js"/>
<hook type="before_plugin_install" src="src/before_plugin_install.js"/>
<!--<hook type="after_plugin_install" src="src/after_plugin_install.js" />-->
<hook type="before_plugin_rm" src="src/before_plugin_rm.js"/>

<!-- android -->
<platform name="android">
<preference name="API_KEY_FOR_ANDROID"/>
<info>
Official document https://github.com/mapsplugin/cordova-plugin-googlemaps-doc/blob/master/v2.3.0/README.md Please consider to buy a beer for us 🍺 https://github.com/mapsplugin/cordova-plugin-googlemaps#buy-us-a-beer
</info>
@@ -233,8 +228,11 @@
<resource-file src="src/android/frameworks/tbxml-android.aar" target="libs/tbxml-android.aar"/>
<resource-file src="src/android/frameworks/tbxml-android.aar" target="app/src/libs/tbxml-android.aar"/>


<framework src="src/android/frameworks/apikey.gradle" custom="true" type="gradleReference"/>

<config-file target="AndroidManifest.xml" parent="/manifest/application">
<meta-data android:name="com.google.android.geo.API_KEY" android:value="$API_KEY_FOR_ANDROID"/>
<meta-data android:name="com.google.android.geo.API_KEY" android:value="${GOOGLE_MAPS_ANDROID_API_KEY}"/>
<!-- Google Play Services SDK -->
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>
<!-- for Android 9 or above -->
@@ -300,7 +298,6 @@
<!-- ios -->
<platform name="ios">

<preference name="API_KEY_FOR_IOS"/>
<preference name="LOCATION_WHEN_IN_USE_DESCRIPTION" default="This app wants to get your location while this app runs only."/>
<preference name="LOCATION_ALWAYS_USAGE_DESCRIPTION" default="This app wants to get your location always, even this app runs in background."/>

@@ -444,10 +441,6 @@
<!-- localized messages for Vietnamese -->
<resource-file src="src/ios/strings/pgm_Localizable_vi.json" target="pgm_Localizable_vi.json"/>

<config-file target="*-Info.plist" parent="Google Maps API Key">
<string>$API_KEY_FOR_IOS</string>
</config-file>

<config-file target="*-Info.plist" parent="NSLocationWhenInUseUsageDescription">
<string>$LOCATION_WHEN_IN_USE_DESCRIPTION</string>
</config-file>
@@ -478,7 +471,7 @@
</array>
</config-file>

<framework src="GoogleMaps" type="podspec" spec="~> 2.7.0" />
<framework src="GoogleMaps" type="podspec" spec="~> 3.1.0" />

<hook type="before_platform_add" src="src/ios/check_sdk_version.js"/>
<hook type="before_plugin_install" src="src/ios/check_sdk_version.js"/>
23 changes: 0 additions & 23 deletions src/after_plugin_install.js

This file was deleted.

48 changes: 48 additions & 0 deletions src/android/frameworks/apikey.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
android {
def searchPath = 'app/src/main/res/xml/config.xml'
def finalConfigXmlFile = null;
for (int i = 0; i < 8; i++) {
def configXmlFile = file(searchPath)
println(configXmlFile.absolutePath)
if(!configXmlFile.canRead()) {
searchPath = '../' + searchPath;
} else {
finalConfigXmlFile = configXmlFile;
break;
}
}


if (finalConfigXmlFile == null) {
throw new GradleException("Could not read config.xml file.")
}

// parse xml file
def widget = new XmlParser().parse(finalConfigXmlFile)
if (widget.preference == null) {
throw new GradleException("widget is null.")
}
println(widget.preference[0].attributes().name);
Properties props = new Properties()
def found = 0
widget.preference.each { pref ->
def name = pref.attributes().name
def value = pref.attributes().value
if (name == "GOOGLE_MAPS_ANDROID_API_KEY") {
//println("name = " + name + ", value = " + value);
found = 1
props.setProperty(name, value);
}
}

if (found == 0) {
throw new GradleException("You need to declare GOOGLE_MAPS_ANDROID_API_KEY in config.xml.")
}


defaultConfig {
manifestPlaceholders = [
GOOGLE_MAPS_ANDROID_API_KEY: props.getProperty("GOOGLE_MAPS_ANDROID_API_KEY")
]
}
}
6 changes: 5 additions & 1 deletion src/android/plugin/google/maps/AsyncLoadImage.java
Original file line number Diff line number Diff line change
@@ -124,7 +124,11 @@ protected void onPreExecute() {
mOptions.url = PluginUtil.getAbsolutePathFromCDVFilePath(resourceApi, mOptions.url);
}

this.currentPageUrl = webView.getUrl();
String currentPage = webView.getUrl();
currentPage = currentPage.replaceAll("#.*$", "");
currentPage = currentPage.replaceAll("\\?.*$", "");
currentPage = currentPage.replaceAll("[^\\/]*$", "");
this.currentPageUrl = currentPage;

//Log.d(TAG, "-->currentPageUrl = " + this.currentPageUrl);

2 changes: 1 addition & 1 deletion src/android/plugin/google/maps/CordovaGoogleMaps.java
Original file line number Diff line number Diff line change
@@ -495,7 +495,7 @@ public void onStart() {
}
@Override
public void onStop() {
super.onStart();
super.onStop();

Collection<PluginEntry>pluginEntries = pluginManager.getPluginEntries();
for (PluginEntry pluginEntry: pluginEntries) {
3 changes: 3 additions & 0 deletions src/android/plugin/google/maps/MyPluginLayout.java
Original file line number Diff line number Diff line change
@@ -81,6 +81,9 @@ public void run() {
RectF drawRect;
for (int i = 0; i < mapIds.length; i++) {
mapId = mapIds[i];
if (mapId == null) {
continue;
}
pluginOverlay = pluginOverlays.get(mapId);
if (pluginOverlay == null || pluginOverlay.getDivId() == null) {
continue;
54 changes: 29 additions & 25 deletions src/android/plugin/google/maps/PluginMarker.java
Original file line number Diff line number Diff line change
@@ -118,14 +118,16 @@ public void run() {
// Recycle bitmaps as much as possible
//--------------------------------------
if (iconCacheKeys != null) {
String[] cacheKeys = iconCacheKeys.keySet().toArray(new String[iconCacheKeys.size()]);
for (int i = 0; i < cacheKeys.length; i++) {
AsyncLoadImage.removeBitmapFromMemCahce(cacheKeys[i]);
iconCacheKeys.remove(cacheKeys[i]);
if (iconCacheKeys.size() > 0) {
String[] cacheKeys = iconCacheKeys.keySet().toArray(new String[iconCacheKeys.size()]);
for (int i = 0; i < cacheKeys.length; i++) {
AsyncLoadImage.removeBitmapFromMemCahce(cacheKeys[i]);
iconCacheKeys.remove(cacheKeys[i]);
}
cacheKeys = null;
}
cacheKeys = null;
}
if (icons != null) {
if (icons != null && icons.size() > 0) {
String[] keys = icons.keySet().toArray(new String[icons.size()]);
//Bitmap[] cachedBitmaps = icons.toArray(new Bitmap[icons.size()]);
Bitmap image;
@@ -146,28 +148,30 @@ public void run() {
@Override
public void run() {
Set<String> keySet = pluginMap.objects.keys;
String[] objectIdArray = keySet.toArray(new String[keySet.size()]);

for (String objectId : objectIdArray) {
if (pluginMap.objects.containsKey(objectId)) {
if (objectId.startsWith("marker_") &&
!objectId.startsWith("marker_property_") &&
!objectId.startsWith("marker_imageSize") &&
!objectId.startsWith("marker_icon_")) {
Marker marker = (Marker) pluginMap.objects.remove(objectId);
marker.setTag(null);
marker.remove();
marker = null;
} else {
Object object = pluginMap.objects.remove(objectId);
object = null;
if (keySet.size() > 0) {
String[] objectIdArray = keySet.toArray(new String[keySet.size()]);

for (String objectId : objectIdArray) {
if (pluginMap.objects.containsKey(objectId)) {
if (objectId.startsWith("marker_") &&
!objectId.startsWith("marker_property_") &&
!objectId.startsWith("marker_imageSize") &&
!objectId.startsWith("marker_icon_")) {
Marker marker = (Marker) pluginMap.objects.remove(objectId);
marker.setTag(null);
marker.remove();
marker = null;
} else {
Object object = pluginMap.objects.remove(objectId);
object = null;
}
}
}
}

synchronized (semaphoreAsync) {
_clearDone = true;
semaphoreAsync.notify();
synchronized (semaphoreAsync) {
_clearDone = true;
semaphoreAsync.notify();
}
}

}
Loading