Showing
5 changed files
with
57 additions
and
56 deletions
... | @@ -2,7 +2,7 @@ apply plugin: 'com.android.library' | ... | @@ -2,7 +2,7 @@ apply plugin: 'com.android.library' |
2 | 2 | ||
3 | ext { | 3 | ext { |
4 | PUBLISH_GROUP_ID = 'ly.warp' | 4 | PUBLISH_GROUP_ID = 'ly.warp' |
5 | - PUBLISH_VERSION = '4.5.1' | 5 | + PUBLISH_VERSION = '4.5.2' |
6 | PUBLISH_ARTIFACT_ID = 'warply-android-sdk' | 6 | PUBLISH_ARTIFACT_ID = 'warply-android-sdk' |
7 | } | 7 | } |
8 | 8 | ... | ... |
1 | /* | 1 | /* |
2 | * Copyright 2010-2013 Warply Ltd. All rights reserved. | 2 | * Copyright 2010-2013 Warply Ltd. All rights reserved. |
3 | - * | 3 | + * |
4 | * Redistribution and use in source and binary forms, without modification, are | 4 | * Redistribution and use in source and binary forms, without modification, are |
5 | * permitted provided that the following conditions are met: | 5 | * permitted provided that the following conditions are met: |
6 | - * | 6 | + * |
7 | * 1. Redistributions of source code must retain the above copyright notice, | 7 | * 1. Redistributions of source code must retain the above copyright notice, |
8 | * this list of conditions and the following disclaimer. | 8 | * this list of conditions and the following disclaimer. |
9 | - * | 9 | + * |
10 | * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 | * 2. Redistributions in binary form must reproduce the above copyright notice, |
11 | * this list of conditions and the following disclaimer in the documentation | 11 | * this list of conditions and the following disclaimer in the documentation |
12 | * and/or other materials provided with the distribution. | 12 | * and/or other materials provided with the distribution. |
13 | - * | 13 | + * |
14 | * THIS SOFTWARE IS PROVIDED BY THE WARPLY LTD ``AS IS'' AND ANY EXPRESS OR | 14 | * THIS SOFTWARE IS PROVIDED BY THE WARPLY LTD ``AS IS'' AND ANY EXPRESS OR |
15 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | 15 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
16 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO | 16 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO |
... | @@ -121,11 +121,11 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -121,11 +121,11 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
121 | } | 121 | } |
122 | } | 122 | } |
123 | 123 | ||
124 | - @Override | 124 | +// @Override |
125 | - public IBinder onBind(Intent arg0) { | 125 | +// public IBinder onBind(Intent arg0) { |
126 | - // We don't provide binding, so return null | 126 | +// // We don't provide binding, so return null |
127 | - return null; | 127 | +// return null; |
128 | - } | 128 | +// } |
129 | 129 | ||
130 | // tells handler to send a message | 130 | // tells handler to send a message |
131 | class firstTask extends TimerTask { | 131 | class firstTask extends TimerTask { |
... | @@ -140,14 +140,14 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -140,14 +140,14 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
140 | 140 | ||
141 | @Override | 141 | @Override |
142 | public boolean handleMessage(Message msg) { | 142 | public boolean handleMessage(Message msg) { |
143 | - | 143 | + if (Warply.getWarplyContext() != null) { |
144 | - if ((new WarplyPreferences(Warply.getWarplyContext()).getUpdateLocationServiceStatus()).equals("off")) { | 144 | + if ((new WarplyPreferences(Warply.getWarplyContext()).getUpdateLocationServiceStatus()).equals("off")) { |
145 | - timer.cancel(); | 145 | + timer.cancel(); |
146 | - stopSelf(); | 146 | + stopSelf(); |
147 | - } | 147 | + } else { |
148 | - else { | 148 | + if (isGeofencingEnabled() && (getGeofences() == null || getGeofences().isEmpty())) |
149 | - if (isGeofencingEnabled() && (getGeofences() == null || getGeofences().isEmpty())) | 149 | + retrieveGeofences(); |
150 | - retrieveGeofences(); | 150 | + } |
151 | } | 151 | } |
152 | Log.i("regulation", "regulation started"); | 152 | Log.i("regulation", "regulation started"); |
153 | regulateLocationReporting(); | 153 | regulateLocationReporting(); |
... | @@ -174,6 +174,7 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -174,6 +174,7 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
174 | @Override | 174 | @Override |
175 | public void onSuccess(JSONObject result) { | 175 | public void onSuccess(JSONObject result) { |
176 | } | 176 | } |
177 | + | ||
177 | @Override | 178 | @Override |
178 | public void onFailure(int errorCode) { | 179 | public void onFailure(int errorCode) { |
179 | WarpUtils.log("failed during sending location data with error " + errorCode); | 180 | WarpUtils.log("failed during sending location data with error " + errorCode); |
... | @@ -191,7 +192,7 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -191,7 +192,7 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
191 | // ------------------- Geofencing ------------------- | 192 | // ------------------- Geofencing ------------------- |
192 | 193 | ||
193 | private void retrieveGeofences() { | 194 | private void retrieveGeofences() { |
194 | - if(!isGeofencingEnabled()) | 195 | + if (!isGeofencingEnabled()) |
195 | return; | 196 | return; |
196 | JSONObject jObj = new JSONObject(); | 197 | JSONObject jObj = new JSONObject(); |
197 | try { | 198 | try { |
... | @@ -205,38 +206,38 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -205,38 +206,38 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
205 | @Override | 206 | @Override |
206 | public void onSuccess(JSONObject result) { | 207 | public void onSuccess(JSONObject result) { |
207 | JSONObject json = result.optJSONObject("context"); | 208 | JSONObject json = result.optJSONObject("context"); |
208 | - if(json != null){ | 209 | + if (json != null) { |
209 | try { | 210 | try { |
210 | JSONArray geoArray = json.getJSONArray("MAPP_GEOFENCING"); | 211 | JSONArray geoArray = json.getJSONArray("MAPP_GEOFENCING"); |
211 | geofences = new ArrayList<>(); | 212 | geofences = new ArrayList<>(); |
212 | - for(int i=0;i<geoArray.length();i++){ | 213 | + for (int i = 0; i < geoArray.length(); i++) { |
213 | getGeofences().add(new WarpGeoFence(geoArray.getJSONObject(i))); | 214 | getGeofences().add(new WarpGeoFence(geoArray.getJSONObject(i))); |
214 | } | 215 | } |
215 | } catch (JSONException e) { | 216 | } catch (JSONException e) { |
216 | - if(BuildConfig.DEBUG) | 217 | + if (BuildConfig.DEBUG) |
217 | e.printStackTrace(); | 218 | e.printStackTrace(); |
218 | geofences = null; | 219 | geofences = null; |
219 | WarpUtils.log("failed during parsing geofencing data."); | 220 | WarpUtils.log("failed during parsing geofencing data."); |
220 | } | 221 | } |
221 | } | 222 | } |
222 | } | 223 | } |
224 | + | ||
223 | @Override | 225 | @Override |
224 | public void onFailure(int errorCode) { | 226 | public void onFailure(int errorCode) { |
225 | geofences = null; | 227 | geofences = null; |
226 | WarpUtils.log("failed during getting geofencing data with error " + errorCode); | 228 | WarpUtils.log("failed during getting geofencing data with error " + errorCode); |
227 | } | 229 | } |
228 | }); | 230 | }); |
229 | - } | 231 | + } else { |
230 | - else { | ||
231 | WarpUtils.log("Could not get geofencing data. You must registrer to warply first"); | 232 | WarpUtils.log("Could not get geofencing data. You must registrer to warply first"); |
232 | } | 233 | } |
233 | } | 234 | } |
234 | 235 | ||
235 | - public boolean isInsideFence(double lat, double lon){ | 236 | + public boolean isInsideFence(double lat, double lon) { |
236 | - if(getGeofences() == null) | 237 | + if (getGeofences() == null) |
237 | return false; | 238 | return false; |
238 | - for(WarpGeoFence fence : getGeofences()){ | 239 | + for (WarpGeoFence fence : getGeofences()) { |
239 | - if(fence.isInsideFence(lat, lon)) | 240 | + if (fence.isInsideFence(lat, lon)) |
240 | return true; | 241 | return true; |
241 | } | 242 | } |
242 | return false; | 243 | return false; |
... | @@ -299,21 +300,21 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -299,21 +300,21 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
299 | 300 | ||
300 | } else if (foregroundProvider == WarpConstants.LocationModes.OFF.ordinal()) { | 301 | } else if (foregroundProvider == WarpConstants.LocationModes.OFF.ordinal()) { |
301 | 302 | ||
302 | - /* | 303 | + /* |
303 | - * in case foreground provider is off and app is in | 304 | + * in case foreground provider is off and app is in |
304 | - * foreground mode then app should stop reporting the | 305 | + * foreground mode then app should stop reporting the |
305 | - * location | 306 | + * location |
306 | - */ | 307 | + */ |
307 | if (!LocationChangedReceiver.isAppShutDown && appStatus.equals("foreground")) { | 308 | if (!LocationChangedReceiver.isAppShutDown && appStatus.equals("foreground")) { |
308 | WarplyLocationManager.stopReportingLocation(context); | 309 | WarplyLocationManager.stopReportingLocation(context); |
309 | 310 | ||
310 | - /* | 311 | + /* |
311 | - * in case background provider is on and app is in | 312 | + * in case background provider is on and app is in |
312 | - * background mode or shut down then app should check for | 313 | + * background mode or shut down then app should check for |
313 | - * settings changes in every fixed time(a day). If none of | 314 | + * settings changes in every fixed time(a day). If none of |
314 | - * the settings is changed then continue with the previous | 315 | + * the settings is changed then continue with the previous |
315 | - * settings. | 316 | + * settings. |
316 | - */ | 317 | + */ |
317 | } else if (!((lastBacProvider == backgroundProvider) | 318 | } else if (!((lastBacProvider == backgroundProvider) |
318 | && (lastBacTime == backgroundMinTime) | 319 | && (lastBacTime == backgroundMinTime) |
319 | && (lastBacDistance == backgroundMinDistance))) { | 320 | && (lastBacDistance == backgroundMinDistance))) { |
... | @@ -333,21 +334,21 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { | ... | @@ -333,21 +334,21 @@ public class UpdateUserLocationService extends /*Service*/ JobIntentService { |
333 | 334 | ||
334 | } else if (backgroundProvider == WarpConstants.LocationModes.OFF.ordinal()) { | 335 | } else if (backgroundProvider == WarpConstants.LocationModes.OFF.ordinal()) { |
335 | 336 | ||
336 | - /* | 337 | + /* |
337 | * in case background provider is off and app is in | 338 | * in case background provider is off and app is in |
338 | - * background mode then app should stop reporting the | 339 | + * background mode then app should stop reporting the |
339 | - * location | 340 | + * location |
340 | - */ | 341 | + */ |
341 | if (LocationChangedReceiver.isAppShutDown || appStatus.equals("background")) { | 342 | if (LocationChangedReceiver.isAppShutDown || appStatus.equals("background")) { |
342 | WarplyLocationManager.stopReportingLocation(context); | 343 | WarplyLocationManager.stopReportingLocation(context); |
343 | 344 | ||
344 | - /* | 345 | + /* |
345 | - * in case foreground provider is on and app is in | 346 | + * in case foreground provider is on and app is in |
346 | - * foreground mode then app should check for settings | 347 | + * foreground mode then app should check for settings |
347 | - * changes in every fixed time(a day). If none of the | 348 | + * changes in every fixed time(a day). If none of the |
348 | - * settings is changed then continue with the previous | 349 | + * settings is changed then continue with the previous |
349 | - * settings. | 350 | + * settings. |
350 | - */ | 351 | + */ |
351 | } else if (!((lastForProvider == foregroundProvider) | 352 | } else if (!((lastForProvider == foregroundProvider) |
352 | && (lastForTime == foregroundMinTime) | 353 | && (lastForTime == foregroundMinTime) |
353 | && (lastForDistance == foregroundMinDistance))) { | 354 | && (lastForDistance == foregroundMinDistance))) { | ... | ... |
... | @@ -38,9 +38,9 @@ public class PermissionsUtil{ | ... | @@ -38,9 +38,9 @@ public class PermissionsUtil{ |
38 | // PERMISSION_WRITE_EXTERNAL = Manifest.permission.WRITE_EXTERNAL_STORAGE; | 38 | // PERMISSION_WRITE_EXTERNAL = Manifest.permission.WRITE_EXTERNAL_STORAGE; |
39 | 39 | ||
40 | private static final String[] DANGEROUS_PERMISSIONS = { | 40 | private static final String[] DANGEROUS_PERMISSIONS = { |
41 | - PERMISSION_LOCATION_FINE, | 41 | +// PERMISSION_LOCATION_FINE, |
42 | - PERMISSION_LOCATION_COARSE, | 42 | +// PERMISSION_LOCATION_COARSE, |
43 | - PERMISSION_PHONE_STATE, | 43 | +// PERMISSION_PHONE_STATE, |
44 | // PERMISSION_WRITE_EXTERNAL | 44 | // PERMISSION_WRITE_EXTERNAL |
45 | }; | 45 | }; |
46 | 46 | ... | ... |
... | @@ -390,7 +390,7 @@ public class WarplyDeviceInfoCollector { | ... | @@ -390,7 +390,7 @@ public class WarplyDeviceInfoCollector { |
390 | return json; | 390 | return json; |
391 | } | 391 | } |
392 | 392 | ||
393 | - private boolean isPackageInstalled(String packageName, PackageManager packageManager) { | 393 | + public boolean isPackageInstalled(String packageName, PackageManager packageManager) { |
394 | try { | 394 | try { |
395 | return packageManager.getApplicationInfo(packageName, 0).enabled; | 395 | return packageManager.getApplicationInfo(packageName, 0).enabled; |
396 | } catch (PackageManager.NameNotFoundException e) { | 396 | } catch (PackageManager.NameNotFoundException e) { | ... | ... |
... | @@ -30,7 +30,7 @@ public class WarpConstants { | ... | @@ -30,7 +30,7 @@ public class WarpConstants { |
30 | /** | 30 | /** |
31 | * The version of the SDK installed in the device | 31 | * The version of the SDK installed in the device |
32 | */ | 32 | */ |
33 | - public static final String SDK_VERSION = "4.5.1"; | 33 | + public static final String SDK_VERSION = "4.5.2"; |
34 | 34 | ||
35 | /** | 35 | /** |
36 | * The URL of the server where it should ping | 36 | * The URL of the server where it should ping | ... | ... |
-
Please register or login to post a comment