Publicado en Android

Cómo saber si la batería se está cargándose en Android Java


Fragmento de código (code snippet) para obtener si el dispositivo se esta cargando y teniendo en cuenta las diferentes formas de fuente de alimentación que existen en Android, que son las siguientes:

  • BatteryManager.BATTERY_PLUGGED_AC La carga del dispositivo es por red eléctrica
  • BatteryManager.BATTERY_PLUGGED_USB Se está cargando por toma USB
  • BatteryManager.BATTERY_PLUGGED_WIRELESS Carga inalambrica, disponible a partir de JellyBean

Función isPlugged()

Con la función isPlugged se puede obtener si la batería del dispositivo se está cargando des de una fuente de alimentación externa

public static boolean isPlugged(Context context) {
   boolean isPlugged= false;
   Intent intent = context.registerReceiver(null, new       IntentFilter(Intent.ACTION_BATTERY_CHANGED));
   int plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
   isPlugged = plugged == BatteryManager.BATTERY_PLUGGED_AC || plugged == BatteryManager.BATTERY_PLUGGED_USB;
   if (VERSION.SDK_INT > VERSION_CODES.JELLY_BEAN) {
       isPlugged = isPlugged || plugged ==    BatteryManager.BATTERY_PLUGGED_WIRELESS;
   }
   return isPlugged;
}

Su uso

Su implementación es solo pasar el contexto a la función y devuelve true o false dependiendo si la batería se está cargando.

if (isPlugged(this) {
   //Se está cargando
} else {
   //No se está cargando
}

Extraído de ese StackOverflow

Publicado en Android

Cómo abrir una página web desde una aplicación Android


Con la siguiente función se puede abrir una página web des de tu aplicación Android, al indicar la url se abrirá el recurso web con el navegador establecido por defecto. Si no existe ningún navegador web disponible en el dispositivo, se mostrará el error definido en la clausula catch.

Función openWebURL()

public void openWebURL(@Nullable String url ) {
   if (url == null) return;
   if (!URLUtil.isValidUrl(url)) {
       if (!url.startsWith("http://") && !url.startsWith("https://"))
           url = "http://" + url;
   }
   try {
       Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
       startActivity(myIntent);
   } catch (ActivityNotFoundException e) {
       Toast.makeText(this, "No application can handle this request."
               + " Please install a webbrowser",  Toast.LENGTH_LONG).show();
       e.printStackTrace();
   }
}

La función comprueba si la url es nula, luego comprueba si es valida y por finalizar comprueba que sea url de web, es decir que debe empezar con http o https, si no se especifica ningún protocolo se le asigna por defecto http. Luego intenta abrir el recurso web con el navegador instalado y establecido por defecto.

Comprueba si hay navegador web instalado en caso de ser inexistente, mostrará un error.

Su uso

Su implementación es muy fácil, solo requiere especificar la url a abrir como parámetro de la función. Ejemplo:

openWebURL("https://dev4phones.wordpress.com/");
Publicado en Android

Formas de Iniciar una Actividad en Android


En la documentación oficial hay un ejemplo basico de como iniciar otra actividad des de una actiidad

Desde una Actividad

Intent intent = new Intent(this, AnotherActivity.class);
startActivity(intent);

Desde un evento

@Override
public void onClick(View view) {
    Intent intent=new Intent(view.getContext(), AnotherActivity.class);
    intent.putExtra("chartLink", ChartLink);
    startActivity(intent);
}

Desde un Fragmento

Intent intent = new Intent(getActivity(), AnotherActivity.class);
startActivity(intent);