{"action":"created","issue":{"url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/issues/835","repository_url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps","labels_url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/issues/835/labels{/name}","comments_url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/issues/835/comments","events_url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/issues/835/events","html_url":"https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/835","id":130497286,"number":835,"title":"Performance problems when adding many markers.","user":{"login":"atannus","id":669339,"avatar_url":"https://avatars.githubusercontent.com/u/669339?v=3","gravatar_id":"","url":"https://api.github.com/users/atannus","html_url":"https://github.com/atannus","followers_url":"https://api.github.com/users/atannus/followers","following_url":"https://api.github.com/users/atannus/following{/other_user}","gists_url":"https://api.github.com/users/atannus/gists{/gist_id}","starred_url":"https://api.github.com/users/atannus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/atannus/subscriptions","organizations_url":"https://api.github.com/users/atannus/orgs","repos_url":"https://api.github.com/users/atannus/repos","events_url":"https://api.github.com/users/atannus/events{/privacy}","received_events_url":"https://api.github.com/users/atannus/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/milestones/25","html_url":"https://github.com/mapsplugin/cordova-plugin-googlemaps/milestones/1.4.0","labels_url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/milestones/25/labels","id":1447483,"number":25,"title":"1.4.0","description":null,"creator":{"login":"Hirbod","id":504909,"avatar_url":"https://avatars.githubusercontent.com/u/504909?v=3","gravatar_id":"","url":"https://api.github.com/users/Hirbod","html_url":"https://github.com/Hirbod","followers_url":"https://api.github.com/users/Hirbod/followers","following_url":"https://api.github.com/users/Hirbod/following{/other_user}","gists_url":"https://api.github.com/users/Hirbod/gists{/gist_id}","starred_url":"https://api.github.com/users/Hirbod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hirbod/subscriptions","organizations_url":"https://api.github.com/users/Hirbod/orgs","repos_url":"https://api.github.com/users/Hirbod/repos","events_url":"https://api.github.com/users/Hirbod/events{/privacy}","received_events_url":"https://api.github.com/users/Hirbod/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":21,"state":"open","created_at":"2015-12-07T11:48:12Z","updated_at":"2016-07-23T02:38:42Z","due_on":null,"closed_at":null},"comments":69,"created_at":"2016-02-01T21:58:12Z","updated_at":"2016-08-02T17:17:42Z","closed_at":null,"body":"I'm proposing a patch to the `PluginMarker.java` file that will greatly improve the performance when adding hundreds of markers to the map.\r\n\r\nI propose the creation of a `createMarkers` method (note the plural), which will take the same marker definition as does the currently available `createMarker`, except for the fact they'll be in an array, therefore allowing the creation of multiple markers with a single over-the-bridge request. Naturally, the `callback` has to return an array of markers, instead of a single marker.\r\n\r\nA  `private createMarker_` method is to be called by `createMarkers`. This does not break the current API, and the current `createMarker` method  can be refactored to simply call the private version with its argument in an array.\r\n\r\nI have already implemented marker caching and marker pre-loading which on top of that will drastically reduce memory consumption and prevent leaks.\r\n\r\nThis is where my understanding of this project ends. I don't know what my constraints as a developer are:\r\n\r\n- Are APIs frozen?\r\n- Are they meant to mimic their respective native environments?\r\n- Or abstract them away? (This preferred, imho.)\r\n- Do iOS and Android APIs diverge today?\r\n\r\nI'm seeing fantastic performance with these improvements, I'd really like to contribute them.\r\n\r\nThanks a lot for the help."},"comment":{"url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/issues/comments/236975303","html_url":"https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/835#issuecomment-236975303","issue_url":"https://api.github.com/repos/mapsplugin/cordova-plugin-googlemaps/issues/835","id":236975303,"user":{"login":"Hirbod","id":504909,"avatar_url":"https://avatars.githubusercontent.com/u/504909?v=3","gravatar_id":"","url":"https://api.github.com/users/Hirbod","html_url":"https://github.com/Hirbod","followers_url":"https://api.github.com/users/Hirbod/followers","following_url":"https://api.github.com/users/Hirbod/following{/other_user}","gists_url":"https://api.github.com/users/Hirbod/gists{/gist_id}","starred_url":"https://api.github.com/users/Hirbod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hirbod/subscriptions","organizations_url":"https://api.github.com/users/Hirbod/orgs","repos_url":"https://api.github.com/users/Hirbod/repos","events_url":"https://api.github.com/users/Hirbod/events{/privacy}","received_events_url":"https://api.github.com/users/Hirbod/received_events","type":"User","site_admin":false},"created_at":"2016-08-02T17:17:42Z","updated_at":"2016-08-02T17:17:42Z","body":"As long as you want to make XHR request on file:///, you will need engine-localhost - otherwise, a lot of thing won't work. Also make sure, that you've pointed out correct policies inside of meta-data (default-src, img etc.)"}}
{"actor":{"display_login":"Hirbod"}}