My Roximity SDK is continuously crashing,
Here's my Gradle:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(':cropper')
compile project(':main')
compile project(':ROXIMITY_SDK_1_3_73')
compile 'com.mcxiaoke.volley:library:1.0.19'
compile 'com.google.code.gson:gson:2.2.4'
compile 'org.slf4j:slf4j-api:1.7.10'
compile 'com.google.android.gms:play-services-base:8.4.0'
compile 'com.google.android.gms:play-services-location:8.4.0'
compile 'com.google.android.gms:play-services-ads:8.4.0'
compile 'com.google.android.gms:play-services-identity:8.4.0'
compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'org.apache.httpcomponents:httpmime:4.5.2'
compile 'com.loopj.android:android-async-http:1.4.9'
compile 'com.android.support:appcompat-v7:23.1.1'
} My Manifest:
I am using code according to instructions mentioned on documentation page as http://docs.roximity.com/mobile/android/integration, In onCreate:
ROXIMITYEngine.startEngineWithOptions(this.getApplicationContext(), R.drawable.ic_launcher, null, this, null);
createBroadcastRecievers();
definition:
private void createBroadcastRecievers(){
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ROXConsts.MESSAGE_FIRED);
intentFilter.addAction(ROXConsts.BEACON_RANGE_UPDATE);
intentFilter.addAction(ROXConsts.WEBHOOK_POSTED);
LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, intentFilter);
}
private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals(ROXConsts.MESSAGE_FIRED)) {
MessageParcel messageParcel = (MessageParcel)intent.getParcelableExtra(ROXConsts.EXTRA_MESSAGE_PARCEL);
handleMessageFired(messageParcel);
} else if (intent.getAction().equals(ROXConsts.BEACON_RANGE_UPDATE)){
String rangeJson = intent.getStringExtra(ROXConsts.EXTRA_RANGE_DATA);
handleBeaconRangeUpdate(rangeJson);
}
}
};
Now its behavior is completely weird. Sometimes it didn't detect the beacons at all and send empty bundles in response. Sometimes detects the beacons for few minutes, and mostly getting crash after one or two updates. Here's the crash Report: FATAL EXCEPTION: main Process:
java.lang.NullPointerException: Attempt to read from field 'java.lang.String android.location.Location.mProvider' on a null object reference at android.location.Location.set(Location.java:131) at android.location.Location.(Location.java:124) at com.roximity.sdk.location.RoxLocation.(RoxLocation.java:30) at com.roximity.sdk.actions.b.b(ActionManager.java:265) at com.roximity.sdk.actions.b.c(ActionManager.java:213) at com.roximity.sdk.beacons.c.c(RangingManager.java:169) at com.roximity.sdk.beacons.c.b(RangingManager.java:107) at com.roximity.sdk.beacons.c.a(RangingManager.java:84) at com.roximity.system.ble.d.j(BluetoothScanController.java:286) at com.roximity.system.ble.f.run(BluetoothScanController.java:257) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5835) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
I have tried almost all possible solutions, it's not an issue on application end, neither resolved by making changes in their recommended code. Any solution will be highly appreciated.