Esqueci de colocar, como estou chamando esse serviço
Em quarta-feira, 17 de fevereiro de 2016 23:50:22 UTC-3, kalinn...@gmail.com escreveu:
-- public class InternetAparelhoTask extends TimerTask {
Context context;
public InternetAparelhoTask(Context context){
this.context = context;
}
@Override
public void run() {
boolean internet = Util.temInternet(context);
if(internet){
Controller.getInstance().enviar_dados_ao_servidor(context);
}else{
Log.d(Constants.TAG, "Não Tem Internet");
}
}
}
public static boolean temInternet(Context context){
ConnectivityManager cm;
NetworkInfo info = null;
boolean internet;
try{
cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
info = cm.getActiveNetworkInfo();
}
catch (Exception e){
e.printStackTrace();
}
if (info != null){
internet = true;
}
else{
internet = false;
}
return internet;
}
Em quarta-feira, 17 de fevereiro de 2016 23:50:22 UTC-3, kalinn...@gmail.com escreveu:
Pessoal,...Estou fazendo um aplicativo que ele faz uma sincronização com o banco de dados. Porém, caso ele não tenha internet, o aplicativo fica guardando localmente, até que a internet fique ativa novamente.O problema, é que quando eu ativo o wifi(ou 3g) ele não está sincronizando.Alguem poderia me ajudar?Alguem teria um exemplo mais prático e simples?Minha classe LocationService.Obrigadapublic class LocationService extends Service implements LocationListener{
private LocationManager locationManager;
private Timer trackTimer;
private Context context;
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
public LocationService(Context context){
this.context = context;
Log.i(Constants.TAG, "Iniciar GPS");
locationManager = (LocationManager) context.getSystemService(Context .LOCATION_SERVICE);
if (ContextCompat.checkSelfPermission (context, android.Manifest.permission.ACCESS_FINE_LOCATION ) == PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission (context, android.Manifest.permission.ACCESS_COARSE_LOCATION ) == PackageManager.PERMISSION_GRANTED ) {
if (Constants.CHECK_GPS) {
locationManager.requestLocationUpdates (LocationManager.GPS_PROVIDER , Constants.TRACK_TIME, Constants.LOCATION_ACCURACY, this);
Controller.getInstance().setLocation (locationManager.getLastKnownLocation (LocationManager.GPS_PROVIDER ));
} else {
locationManager.requestLocationUpdates (LocationManager.NETWORK_PROVIDER , Constants.TRACK_TIME, Constants.LOCATION_ACCURACY, this);
Controller.getInstance().setLocation (locationManager.getLastKnownLocation (LocationManager.NETWORK_PROVIDER ));
}
}
trackTimer = new Timer();
trackTimer.schedule(new RotasAparelhoTask(this), 0, Constants.TRACK_TIME);
trackTimer.schedule(new RegistroColetorTask(this), 0, Constants.TEMPO_REGISTRO_COLETOR );
trackTimer.schedule(new InternetAparelhoTask(this), 0, Constants.TEMPO_REGISTRO_COLETOR );
}
@Override
public void onLocationChanged(Location location) {
Log.i(Constants.TAG, "lat: " + location.getLatitude() + " lng: " + location.getLongitude());
Controller.getInstance().setLocation (location);
}
@Override
public void onDestroy() {
super.onDestroy();
if (locationManager != null) {
if (ContextCompat.checkSelfPermission (context,Manifest.permission .ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission (context,Manifest.permission .ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED ) {
locationManager.removeUpdates(this );
trackTimer.cancel();
Log.i
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.






0 comentários:
Postar um comentário