Commit Graph

8640 Commits

Author SHA1 Message Date
Jesse Bounds
b163e99499 [iOS] Send turnstile event as much as once per day
Previously, the post of the turnstile event was a side effect of the
map.load event and would happen when the host app was started from a
terminated state at the first initialization of MGLMapView. The
turnstile event post was guarded with dispatch_once so that it would
only ever be sent once during the lifecycle of the application after
it started from the terminated state.

This changes that behavior by:

- Allowing a new turnstile event to be posted as much as once per
day
- Only triggering a map.view event when a map is initialized if the map
is loaded outside of the 'background' application state
- Sending a map.view event whenever a MGLMapView is instantiated
and the application did become active or enters foreground

iOS turnstile event sending behavior is now:

- A map.view event is generated whenever a map is loaded and also
when a map is shown again when the host app becomes active and moves
into the foreground
- Turnstile events are still triggered by mapviews and will be sent as
frequently as once per day for a host app that is not terminated and
also whenever a host app is terminated and restarted
w
2016-03-21 14:09:11 -07:00
Brad Leege
fb4d9d083d Merge branch '4327-OnDoubleTap-trigger-camera-invalidation' into release-ios-3.2.0-android-4.0.0 2016-03-21 15:45:51 -05:00
Tom MacWright
c50194ebfa Merge pull request #4412 from mapbox/darwin-readme
Add Darwin readme
2016-03-21 16:20:04 -04:00
Brad Leege
1856b3aeea [android] #4328 - Adding check of userAgent to see if it's still in initial state before prepending app meta data to it 2016-03-21 15:08:42 -05:00
Brad Leege
16a58e8e49 [android] #4328 - Adding check of userAgent to see if it's still in initial state before prepending app meta data to it 2016-03-21 15:05:50 -05:00
John Firebaugh
967b6c7248 [core] Stop any OfflineDownload before deleting a region
No progress events should be processed after deleting a region.
2016-03-21 12:41:17 -07:00
Brad Leege
f992c12e5e Merge branch '4327-OnDoubleTap-trigger-camera-invalidation' of https://github.com/mapbox/mapbox-gl-native into 4327-OnDoubleTap-trigger-camera-invalidation 2016-03-21 14:26:30 -05:00
Tobrun
8508aea6fb [android] #4327 - OnDoubleTap needs to trigger camera invalidation after a zoom occurs 2016-03-21 14:25:14 -05:00
Minh Nguyễn
6b7d635d04 [ios, osx] Elaborate dependencies
Also avoid referring to Mapbox SDKs with Apple’s SDK names.
2016-03-21 11:49:51 -07:00
Antonio Zugaldia
ead63abadd [android] Make sure we always load mapbox-gl when a native method is loaded
Fixes #4175
2016-03-21 14:34:04 -04:00
Tom MacWright
544780f237 Add Darwin readme 2016-03-21 14:02:27 -04:00
John Firebaugh
4fd80f8c8f [node] Drop Node 5 from build matrix (fixes #4370) 2016-03-21 10:57:43 -07:00
Antonio Zugaldia
682b404bf6 [android] Unify cache and offline databases
See #4362
2016-03-21 10:55:54 -07:00
Tobrun
ca565a2cb2 [android] #4327 - OnDoubleTap needs to trigger camera invalidation after a zoom occurs 2016-03-21 15:08:06 +01:00
Dan Wexler
429ea535e5 Reset the translation to zero without adjusting for view to fix non-zero frame origin bug. 2016-03-20 09:32:17 -07:00
John Firebaugh
3152243f4e [android] Add script for NDK debugging 2016-03-18 17:12:53 -07:00
John Firebaugh
90d271709f [core] Add additional logging for exceptions during database connection / creation
Refs #4382
2016-03-18 17:09:43 -07:00
John Firebaugh
1593b962ed [android] Throw C++ exceptions by value, not by pointer
Refs #4385
2016-03-18 16:29:22 -07:00
Minh Nguyễn
7155c9bb81 ios-v3.2.0-beta.2 2016-03-18 14:34:22 -07:00
Brad Leege
d33cee7fd8 [android] #4328 - Make Telemetry start only when savedInstanceState is null 2016-03-18 17:26:38 -04:00
Jesse Bounds
4f816dcfbe [iOS] Increase distance filter to 5 m 2016-03-18 14:20:18 -07:00
Minh Nguyễn
b493bdc649 [ios, osx] Unified offline and ambient caches
There is now only one instance of mbgl::OfflineFileSource, created when the shared MGLOfflineStorage object is initialized. Also create and use the shared MGLOfflineStorage object when initializing an MGLMapView object. The unified cache file is located in a subdirectory of Application Support, where the SDK has control over the file’s lifetime. The subdirectory is already named after the host application’s bundle identifier, ensuring that each Mapbox-powered application has an independent tile limit. If there’s an ambient cache in a subdirectory of Caches, delete it. If there’s an offline cache in a subdirectory of Documents on iOS or Caches on OS X, move it to the unified cache location in a subdirectory of Application Support.

Fixes the iOS/OS X side of #4338.
2016-03-18 14:02:32 -07:00
Brad Leege
0d816916b1 [android] #4328 - Make Telemetry start only when savedInstanceState is null 2016-03-18 16:48:42 -04:00
Brad Leege
fff13d0976 [android] #4294 - JavaDocs for Telemetry classes 2016-03-18 14:26:07 -04:00
Brad Leege
5f89c1ab34 [android] #4294 - JavaDocs for Telemetry classes 2016-03-18 12:47:39 -04:00
Minh Nguyễn
0a26d8448a Merge pull request #4378 from mapbox/1ec5-offline-umbrella
Include offline headers in static umbrella header
2016-03-18 01:24:27 -07:00
Minh Nguyễn
3814f38c07 [ios] Updated changelog
ec072b437a was unintentionally committed directly to the release branch, so no PR was created.
2016-03-18 00:33:14 -07:00
Minh Nguyễn
ec072b437a [ios] Copy dynamic framework .dSYM into distribution 2016-03-18 00:29:58 -07:00
Minh Nguyễn
35e6aa70bc [ios] Include offline headers in static umbrella header
Include offline headers in the umbrella header used by the static framework. These includes are already present in the umbrella header used by the dynamic framework. jazzy relies on the static umbrella header to include all the headers, so the offline headers were also missing from documentation.
2016-03-18 00:15:36 -07:00
Thiago Marcos P. Santos
115a5d10f9 [core] Fix regression of prior expiration time not being respected 2016-03-18 00:10:50 -03:00
Thiago Marcos P. Santos
0e201eb23d [tests] Add utest to make sure prior expiration time is being respected 2016-03-17 23:57:28 -03:00
Thiago Marcos P. Santos
0c3247bf3c [core] Fix regression of prior expiration time not being respected 2016-03-17 23:57:28 -03:00
Bruno de Oliveira Abinader
cd1a06c2dc [core] Get rid of MapData::{get,set}animationTime 2016-03-18 01:27:48 +02:00
Bruno de Oliveira Abinader
c6ba05bbc3 [core] Default fade duration is now a constant 2016-03-18 01:27:47 +02:00
Bruno de Oliveira Abinader
8f96dea822 [core] Remove default transition duration 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
15621b066c [android] Remove default transition duration 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
88cff6e29d [ios] Update class transition usage 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
f736e46ca4 [core] s/Update::Zoom/Update/RecalculateStyle/ 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
4909169996 [core] Added user-defined transition properties when modifying classes 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
94de5d7f4a [core] Remove MapData::defaultTransitionDelay 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
aa530d2bea [core] Cleaned up duplicate code in MapContext 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
01edd4503c [core] Move class handling to Style 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
c561ea5d05 [core] Check for NaNs in mbgl::util::{min,max,clamp} 2016-03-18 01:26:22 +02:00
Bruno de Oliveira Abinader
ac70ada2d3 [core] Check for NaNs in mbgl::util::{min,max,clamp} 2016-03-18 00:53:14 +02:00
Jesse Bounds
bcb3bb0931 [core] Stop download when tile limit is reached
The tile limit guard (when used) stops a download from continuing
when the tile limit is reached. This wraps the guard in a method
and employs it in both places currently necessary to ensure the
guard has a chance to function. Tests have been updated to
ensure the fix works for a less trivial tile limit scenario.
2016-03-17 15:52:18 -07:00
John Firebaugh
5130ca8843 [core] Implement a vacuum strategy for the offline database
Enable `PRAGMA auto_vacuum = INCREMENTAL`, and perform a `PRAGMA incremental_vacuum` when deleting an offline region.
2016-03-17 14:17:59 -07:00
Jesse Bounds
aa60d29534 [iOS] Use CFBundleIdentifier instead of CFBundleName in UA string
Although often recommended, CFBundleName is not guaranteed to exist in
an app's configuration. As an identifier of telemetry data, even when
it is present it can be inconsistent because of localization.

CFBundleIdentifier, although possibly longer, will be consistent
across locales and for the lifetime of an app in the App Store even
if the app name changes in any locale.
2016-03-17 14:01:48 -07:00
Thiago Marcos P. Santos
a69df28d21 [android] Build ARMv8 on the apackage target
Follow-up of 51a3907.
2016-03-17 14:25:24 -04:00
Thiago Marcos P. Santos
fc0f32b6bf Bump mason
Fixes aarch64 build for android.

Fixes #1956
Fixes #3128
2016-03-17 14:25:07 -04:00
Thiago Marcos P. Santos
cfcccb94a1 [android] Build ARMv8 on the apackage target
Follow-up of 51a3907.
2016-03-17 14:30:11 -03:00