El envío de datos en el servidor a través de una aplicación Android

¿Cómo enviar datos en el servidor a través de una aplicación para Android? Aquí, vamos a hacer un módulo de sesión en prácticamente aprender el CallHtttpRequest .

En primer lugar tenemos que hacer una actividad y el diseño. La actividad contendrá la referencia del campo de entrada en el diseño de modo que cuando el usuario pulsa enter tomará los datos de los campos de entrada y hará una URL. Esta URL se utiliza para almacenar nuestra cadena y vamos a establecer el cargo método.

de usuario (dar credencial) y rarr; diseño / actividad (marca url) y rarr; utilizar CallHttpRequest

El CallhttpRequest class este particular:

package com.example.sandeepsappal.friendcircle;
import android.content.Context;
import android.os.AsyncTask;
import android.widget.Toast;
import java.io.DataInputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class CallHttpRequest extends AsyncTask<String,Void,String> {
Context context;
String process;
public CallHttpRequest(Context ctx, String login) {
this.context=context;
this.process=process;
}
@Override
protected String doInBackground(String... url) {
if(process.equals("login")){
String output= callRequest (url[0]);
return output;
}
return null;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
if(s.equals("true")){
Toast.makeText(context,"Login Successful", Toast.LENGTH_LONG).show();
}
}
String callRequest(String Url) {
try {
URL url = new URL(Url);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("POST");
con.setDoInput(true);
DataInputStream in=new DataInputStream(con.getInputStream());
StringBuffer output = new StringBuffer();
String str;
while ((str = in.readLine()) != null) {
output.append(str);
}
in.close();
return (output.toString());
} catch (Exception e) {
}
return (null);
}
}

El Archivo Actividad de acceso for esto:

package includehelp.articles;
import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import com.example.sandeepsappal.friendcircle.CallHttpRequest;
public class LoginActivity extends AppCompatActivity {
EditText username,password;
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
username = (EditText) findViewById(R.id.username);
password = (EditText) findViewById(R.id.password);
btn = (Button) findViewById(R.id.button);
btn.setOnClickListener(new Btn_Click(this));
}
class Btn_Click implements View.OnClickListener
{ Context ctx;
Btn_Click(Context ctx)
{ this.ctx=ctx;}
@Override
public void onClick(View view) {
if(view==btn) {
String qs = "?username=" + username.getText() + "&password=" + password.getText();
CallHttpRequest C = new CallHttpRequest(ctx, "Login");
// Change this url
String url[] = {"http://" + ctx.getString(R.string.ip) + ":88/something/somefile" + qs};
C.execute(url);
}
}
}
}

Y el último archivo:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout >:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/username" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:ems="10"
android:id="@+id/password" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="New Button"
android:id="@+id/button" />
</LinearLayout>

Menifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest >:android="http://schemas.android.com/apk/res/android"
package="includehelp.articles">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".LoginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity></application>
</manifest>

Aquí lo importante es en el archivo de java, donde se ha hecho la URL.

String qs = "?username=" + username.getText() + 
"&password=" + password.getText();
CallHttpRequest C = new CallHttpRequest(ctx, "Login");
// Change this url
String url[] = {"http://" + ctx.getString(R.string.ip) +
":88/something/somefile" + qs};
C.execute(url);

Como se puede ver la cadena qs es la parte de la consulta, que consiste en nombre de usuario y contraseña . El nombre de usuario se va a recoger el cuadro de edición del archivo de diseño que tienen el id igual a nombre de usuario, de manera similar tomamos contraseña.

cadena URL es igual a la primera parte de la URL que consisten en el nombre de dominio y el poste. Aquí también se debe especificar el nombre del proyecto y el nombre del controlador, si los hubiere.

Si está utilizando el expreso o cualquier otro servidor API REST a continuación, dar la trayectoria del oyente.

Eso es todo lo que tiene que cuidar.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *