نوشته‌ها

اتصال به سرور در اندروید

اتصال به سرور در اندروید

در ابتدا کارpermission  مربوطه را در فایل AndroidManifest.xml اضافه می‌کنیم:

<uses-permission android:name=”android.permission.INTERNET” />

 بعد  یک دکمه می‌سازیم تا کد مربوط به اتصال را درون آن بنویسیم.

 

و متغیر  و دکمه را در MainActivity  تعریف می‌کنیم:

 

public class MainActivity extends AppCompatActivity {
public static String dataServer=””;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnServer =(Button)findViewById(R.id.btnServer);
}
}

 

 

 

یک جاوا کلاس با نام Conn.java می‌سازیم:

import android.os.AsyncTask;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

/**
* Created by alizadeh-ma on 01/03/2018.
*/

public class Conn   extends AsyncTask{
public String link=””;

public Conn(String link)  {
this.link=link;
}

@Override
protected Object doInBackground(Object[] objects){
try{

          URL url=new URL(link);
URLConnection connection =url.openConnection();
BufferedReader bufferedreader =new BufferedReader(new InputStreamReader(connection.getInputStream()));
StringBuilder stringBuilder=new StringBuilder();
String data = null;
while ((data=bufferedreader.readLine())!=null){
stringBuilder.append(data);
}
MainActivity.dataServer =stringBuilder .toString();
}
catch (Exception e){
e.printStackTrace();
}
return null;
}
}

حالا کد اتصال را در هنگام کلیک دکمه فراخوانی می‌کنیم:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
public static String dataServer=””;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Conn(“http://webenik.com/android/index.php”).execute();
Button btnServer =(Button)findViewById(R.id.btnServer);
btnServer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// کدهای بعد از اتصال
}
});

             }
}