Bien hoy vamos a tratar un tema interesante, por lo general muchos usuarios tienen su pagina web o blog sea cual fuese el lugar hospedado. Pero llega un dia donde uno quiere llegar a mas personas y es aqui donde se debe aprovechar la tecnologia me refiero al boom de las aplicaciones movil. Si te has fijado bien hay muchas paginas web que te dan sus propias aplicaciones para poder ver sus post o nuevas entradas, es asi como en esta oportunidad te voy a enseñar a crear dicha aplicacion de una forma sencilla por asi decirlo.
En otra ocacion me preguntaron porque agregaba los linerLayout a muchos de los proyectos que subo al blog, esto lo hago porque aplicamos buenas practicas mejora la estetica y permite que nos podamos deslizar y mirar bien lo que estamos programando. Entonces quedaria algo asi.
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.androfast.server.appwebview.MainActivity"> <ProgressBar android:id="@+id/progressBar" style="?android:attr/progressBarStyle" android:layout_width="87dp" android:layout_height="wrap_content" android:layout_marginEnd="8dp" android:layout_marginStart="8dp" android:layout_marginTop="228dp" android:layout_x="142dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.501" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <WebView android:id="@+id/webView" android:layout_width="0dp" android:layout_height="0dp" android:layout_marginBottom="8dp" android:layout_marginEnd="8dp" android:layout_marginStart="8dp" android:layout_marginTop="8dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="1.0" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.0"> </WebView> </android.support.constraint.ConstraintLayout>
import android.app.Activity; import android.os.Build; import android.os.Bundle; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.ProgressBar; public class MainActivity extends Activity { private WebView browser; private ProgressBar progressBar; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); browser = (WebView) findViewById(R.id.webView); // habilitamos javascript y el zoom browser.getSettings().setJavaScriptEnabled(true); browser.getSettings().setBuiltInZoomControls(true); // habilitamos los plugins (flash) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) { browser.getSettings().setPluginState(WebSettings.PluginState.ON); } else { // IMPORTANTE!! este método ha sido eliminado en Android 4.3 // por lo que si lo necesitamos para mantener la compatibilidad // hacia atrás hay que compilar el proyecto con Android 4.2 como // máximo browser.getSettings().setPluginState(WebSettings.PluginState.ON); } browser.loadUrl("https://androfast.com"); browser.setWebViewClient(new WebViewClient() { // evita que los enlaces se abran fuera nuestra app en el navegador // de android @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } }); progressBar = (ProgressBar) findViewById(R.id.progressBar); browser.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int progress) { progressBar.setProgress(0); progressBar.setVisibility(view.VISIBLE); MainActivity.this.setProgress(progress * 1000); progressBar.incrementProgressBy(progress); if (progress == 100) { progressBar.setVisibility(view.GONE); } } // la implementación de este método permite para mostrar el title de // la página en la barra de título de la aplicación @Override public void onReceivedTitle(WebView view, String title) { MainActivity.this.setTitle(MainActivity.this.browser.getTitle()); } }); } }
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
Hola soy Alex Céspedes fundador de ANDROFAST, programo algunas cosas por diversión, me gusta aprender cosas nuevas y estoy pendiente de todo lo que tenga que ver con tecnología. Este blog lo cree para todas las personas que tengan dificultades en la programación, para ser sincero nunca fui bueno y reprobé algunos cursos de programación, pero mis ganas de aprender pudieron más. SI YO PUEDO TU PUEDES ANIMO!