Archivo categoría Android

Cómo agregar Apache HTTP Client en Android Studio

Android Studio - Apache HTTP Client

Para usar en Eclipse las librerías de Apache HTTP Client (httpclient y httpmime) simplemente bajaba el port para Android y luego incluía las dependencias especificando los archivos jar: /home/lgallard//Android/libs/httpcore-4.3.2.jar /home/lgallard//Android/libs/httpmime-4.3.5.jar Esta práctica la arrastré al migrar mis proyectos a Android Studio, pero el resto de las librerías si las resolvía con Gradle. Entonces para uniformizar todo, decidí investigar un poco cómo incluir las librerías de Apache HTTP Client. Basta con agregar las siguientes líneas en el archivo build.gradle de tu aplicación:


apply plugin: 'com.android.application'

android {

    dependencies {
        compile group: 'org.apache.httpcomponents' , name: 'httpclient-android' , version: '4.3.5.1'
        compile (group: 'org.apache.httpcomponents' , name: 'httpmime' , version: '4.3.5') {
        exclude module: 'org.apache.httpcomponents:httpclient'}
    }

    android {
        useLibrary 'org.apache.http.legacy'
    }

}

Finalmente sincroniza gradle y compila nuevamente tu proyecto.

Referencia: Apache HttpClient Android (Gradle)

 


,

16 Comentarios

Cómo activar la interfaz Web de qBittorrent

Si deseas controlar to servidor qBittorrent usando la interfaz web, sigue los siguientes pasos:

  1. En la barra de menú, ve a Tools > Options qBittorrent WEB UI
  2. En la próxima ventana, selecciona la opción Web UI
  3. Marca la opción Enable the Web User Interface (Remote control)
  4. Selecciona un puerto (Por omisión 8080)
  5. Configura el nombre de usuario y contraseña (Por omisión username: admin / password: adminadmin) WEB UI
  6. Haz clic en Ok para guardar las configuraciones.

Ahora podrás acceder a tu servidor desde un navegador si colocas la dirección IP y puerto de tu servidor qBittorrent, ejemplo: 192.168.1.100:8080 como se muestra a continuación: qBittorrent Web UI También puedes acceder desde tu dispositivo Android si instalas qBittorrent Client o qBittorrent Client ProqBitttoren Client Pro

, ,

No hay Comentarios

Curso Programming Mobile Applications for Android Handheld Systems

Programming Mobile Applications for Android Handheld Systems

Coursera me acaba de enviar mi certificado por haber culminado con ditinción el curso Programming Mobile Applications for Android Handheld Systems. Este curso es avalado por la universidad de Maryland y dictado por Dr. Adan Porter.

Algo interesante a resaltar sobre este curso de Android es lo bien estructurado que está, además de la calidad de los videos y las asignaciones. Me recordó mucho a algunos proyectos que tuve que realizar en mi universidad, ya que están bien organizados y con cosas específicas para realizar. De hecho la evaluación de los proyectos se realizan de forma automática con unos JUnits. El proyecto final si es evaluado por otros participantes del curso (4 en total).

Para este curso tome la opción del Signature Track, que es la modalidad de pago donde se valida que quien realiza las asignaciones es quien dice ser, usando un software de reconocimiento de patrón de escritura y con verificación de la foto del estudiante (al final del curso los asistentes del instructor verifican estas fotos). Con estas validaciones otorgan un certificado que puede ser verificado en las siguientes URLs:

Si estas interesado en este curso, puedes acceder al contenido del mismo en el enlace proporcionado arriba.

,

6 Comentarios

Curso Creative, Serious and Playful Science of Android Apps

Coursera androidapps101 2014 Computer Science and Programming Badge

Hace poco me llegaron los reconocimientos del curso de Android Creative, Serious and Playful Science of Android Apps dictado por Lawrence Angrave de la Universidad de Illinois en Urbana-Champaign. El curso está diseñado para aprender a desarrollar aplicaciones Android desde cero, por lo que si deseas aprender a desarrollar para esta plataforma este es un buen punto de partida. Los videos son en inglés, pero existen subtítulos en español e inglés, por lo que el idioma no es una barrera.

Los reconocimientos

Los reconocimientos que me otorgaron fueron:

  • Statement of Accomplishment: Esto es como un certificado de cumplimiento del curso con 70% o más. Yo obtuve 94.6%
  • Computer Science and Programming Badge: Esta es una especie de insignia que dan también por haber aprobado con más de 70%.

Estos reconocimientos no son los que dan con el Signature Track, el cual  permite compartir esta calificación con un sistema de validación comprobable, a cambio de $49 que se debe pagar para este beneficio.

,

No hay Comentarios

qBittorrent Controller para Android

Descarga la aplicación

Si estás interesado en esta aplicación puedes instalarla desde Google Play o descargando directamente el apk de qBittorrent Controller en tu dispositivo. También puedes descargar el código en GitHub ya que está liberado bajo licencia LGPL.

Características

  • Vista de dos páneles (fragments) para el listado de torrents y el detalle en la misma ventana
  • Menú desplegable para cambiar entre los listados de torrents: All, Downloading, Completed, Paused, Active and Inactive
  • Pausar o iniciar todos los torrents del listado actual
  • Actualización automática del listado después de ejecutar una acción en un torrent (pausar, iniciar, or delete)
  • Add URL directly or by clicking the torrent link on your device’s browser
  • Pause, resume, delete or delete individual torrents with its downloaded data
  • Set and save a connexion account

Capturas en teléfono



Capturas en tableta


,

6 Comentarios

Mi primera aplicación en Android: BatteryReporter

batteryreporter

Desde hace un tiempo estaba con la idea de aprender a desarrollar aplicaciones para Android, y en lo que vi que ofertaron un curso en Coursera de desarrollo de aplicaciones Android vi la oportunidad para hacerlo. Debo confesar que no es “copiar y pegar” (aunque se consigue códigos de ejemplos) y que se debe aprender nuevos conceptos, ya que aun y cuando hayas programado con anterioridad (incluso en Java) ahora debes aprender cómo se hace “a lo Android”.

Después de seguir los vídeos, leer y leer, ya hice mi primera aplicación en Android, que de hecho es parte de una asignación que exigen en el curso. Es una aplicación sencilla que lee el estado de la batería del dispositivo, y reporta si se está cargando así como el porcentaje de carga del mismo.

Para el que quiera probar mi primera aplicación, o simplemente echar una mirada al código por si quiere aprender, aquí dejo el archivo apk y el código del mismo.

El código (MainActivity.java)

Aquí les dejo el código java de la aplicación:

package com.lgallardo.batteryreporter;
import android.os.BatteryManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.res.Resources;
import android.view.Menu;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 }
@Override
 public boolean onCreateOptionsMenu(Menu menu) {
 // Inflate the menu; this adds items to the action bar if it is present.
 getMenuInflater().inflate(R.menu.main, menu);
 return true;
 }
public void getStatus(View view) {
TextView statusValueTextView, chargingValueTextView, levelValueTextView;
 ImageView iconImageView;

 String charging = "";
int level, scale;
 float batteryPct;
// Get resources reference
 Resources res = getResources();
// Get values TextViews
 statusValueTextView = (TextView) findViewById(R.id.statusValue);
 chargingValueTextView = (TextView) findViewById(R.id.chargingValue);
 levelValueTextView = (TextView) findViewById(R.id.levelValue);

 // Get ImageView (icon)

 iconImageView = (ImageView) findViewById(R.id.imageView1);

 // Get battery's status
 IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
 Intent batteryStatus = registerReceiver(null, ifilter);
// Check if the battery is charging or is charged?
 int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
 boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING
 || status == BatteryManager.BATTERY_STATUS_FULL;
// Update UI status
 statusValueTextView.setText(Integer.toString(status));
// Update UI charging
 if (isCharging) {
 charging = res.getString(R.string.yes);
// Get charging method
 int chargePlug = batteryStatus.getIntExtra(
 BatteryManager.EXTRA_PLUGGED, -1);
 boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
 // boolean acCharge = chargePlug ==
 // BatteryManager.BATTERY_PLUGGED_AC;
if (usbCharge) {
 charging = charging + " " + res.getString(R.string.usb);
 } else {
 charging = charging + " " + res.getString(R.string.ac);
 }

 iconImageView.setImageResource(R.drawable.charging);
 } else {
 charging = res.getString(R.string.no);
 iconImageView.setImageResource(R.drawable.discharging);
 }
chargingValueTextView.setText(charging);
// Update UI level
 level = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
 scale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
 batteryPct = 100 * level / (float) scale;
levelValueTextView.setText(Float.toString(batteryPct)+"%");
}
}

,

2 Comentarios