Hasta el momento las pruebas se han realizado es móviles de la Gama Motorola G y X sin ningún problema. Pero... hay ciertos móviles de la gama Xperia que al iniciar la aplicación y ejecutarse dicho servicio cierra la app y llevo ya varios días revisando compatibilidad y aún no defino un problema como tal.
Comparto el método del servicio que está generando el problema:
Código:
Quedo agradecido con cualquier idea del porqué o qué podría ser el problema.@Override public void onLocationChanged(Location location) { // TODO Auto-generated method stub try { if((location_manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) && (location_manager.isProviderEnabled(LocationManager.NETWORK_PROVIDER))) { if(request_counter == 0) { last_position = new LatLng(Double.parseDouble(location.convert(location.getLatitude(), location.FORMAT_DEGREES)), Double.parseDouble(location.convert(location.getLongitude(), location.FORMAT_DEGREES))); request_counter ++; } else { Location location_last_position = new Location(""); location_last_position.setLatitude(last_position.latitude); location_last_position.setLongitude(last_position.longitude); Float distance = location_last_position.distanceTo(location); if(distance.intValue() >= getApplicationContext().getResources().getInteger(R.integer.distance_range)) { String send_position_url = String.format(getApplicationContext().getString(R.string.send_position_service), location.convert(location.getLatitude(), location.FORMAT_DEGREES), location.convert(location.getLongitude(), location.FORMAT_DEGREES), getEmail(getApplicationContext()), 2); SPR spr = new SPR(); spr.execute(send_position_url); last_position = null; last_position = new LatLng(Double.parseDouble(location.convert(location.getLatitude(), location.FORMAT_DEGREES)), Double.parseDouble(location.convert(location.getLongitude(), location.FORMAT_DEGREES))); } else {} } } else { Toast.makeText(getApplicationContext(), getApplicationContext().getString(R.string.location_unabled), Toast.LENGTH_LONG).show(); } } catch(Exception e) { Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show(); } }
Desde ya muchas gracias.