كانال WiFi دستگاه اندرويدي
بعضي وقت ها پيش ميايد كه در نرم افزار هايي كه مي نويسيم، كانال WiFi دستگاه اندرويدي براي اتصال پرنور شود.براي مثال براي انتقال فولدر و يا اين كه در كل رابطه با دستگاه ديگر از روش WiFi ، فعاليت با كانال WiFi ضروري ميباشد. همينطور گه گاه پيش ميآيد كه در برنامه هاي اندرويدي، بخواهيم برنامه به هر دليلي به وب وصل شود.دراين بخش مي آموزيد كه چه گونه با كانال واي فاي عمل كرده و آن را در رخ لزوم هر وقت كه بخواهيد پرنور و يا اين كه خاموش فرمائيد.
طراحي اپليكيشن
اينجانب يك پروژه نو به اسم Wifi-Gsm ساخت ميكنم.از مسير Res -> Layoyt به سراغ پوشه activity_main.xml ميرويم. آنگاه از تب Design وارد نصيب Palette ها مي شويم و دو دكمه Button را به لايه نرم افزار بيشتر ميكنيم.در واقع ميخواهيم با اين دكمه ها، كانال واي فاي را جدا و يا اين كه وصل بكنيم. پس نام يكياز آنها رو “پرنور” و نام ديگري را “خاموش” مي گذاريم.
كد Xml دكمه هاپرنور"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:layout_marginTop="156dp"android:id="@+id/RoshanButton" />
درحال حاضر به سراغ كد جاواي برنامه MainActivity.java ميرويم. دراين نصيب بعد از معرفي دكمه ها بدين بخش، مي بايست كدهايي را بنويسيم كه نرم افزار با به كارگيري از دو دكمه، بتواند كانال WiFi را جدا و يا اين كه وصل نمايد.در مرحله اوليه، مي بايست دكمه ها را به برنامه معرفي نماييم.Button wifibtnRoshan = (Button) findViewById(R.id.RoshanButton);Button wifibtnKhamosh = (Button) findViewById(R.id.KhamoshButton);در مرحله بعدي مي بايست يك اتفاق افتاد براي دكمه ي پرنور بنويسيم. تا هنگامي بر روي آن زده شود، كانال Wifi، پرنور شود.wifibtnRoshan.setOnClickListener(new View.OnClickListener() {
@Overridepublic void onClick(View arg0) {
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);wifi.setWifiEnabled(true);Toast.makeText(MainActivity.this, "شبكه واي فاي روشن شد", Toast.LENGTH_LONG).show();}});در مرحله سوم بايستي يك اتفاق افتاد براي دكمه ي خاموش بنويسيم. تا زماني بر روي آن زده شود، كانال Wifi، خاموش شود.wifibtnKhamosh.setOnClickListener(new View.OnClickListener() {
@Overridepublic void onClick(View arg0) {
WifiManager wifi1 = (WifiManager) getSystemService(Context.WIFI_SERVICE);wifi1.setWifiEnabled(false);Toast.makeText(MainActivity.this, "شبكه واي فاي خاموش شد", Toast.LENGTH_LONG).show();}});كد بدون نقص MainActivitypackage com.gsm_developers.wifi_gsm;
import android.content.Context;import android.net.wifi.WifiManager;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);
Button wifibtnRoshan = (Button) findViewById(R.id.RoshanButton);Button wifibtnKhamosh = (Button) findViewById(R.id.KhamoshButton);
wifibtnRoshan.setOnClickListener(new View.OnClickListener() {
@Overridepublic void onClick(View arg0) {
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);wifi.setWifiEnabled(true);Toast.makeText(MainActivity.this, "شبكه واي فاي روشن شد", Toast.LENGTH_LONG).show();}});
wifibtnKhamosh.setOnClickListener(new View.OnClickListener() {
@Overridepublic void onClick(View arg0) {
WifiManager wifi1 = (WifiManager) getSystemService(Context.WIFI_SERVICE);wifi1.setWifiEnabled(false);Toast.makeText(MainActivity.this, "شبكه واي فاي خاموش شد", Toast.LENGTH_LONG).show();}});}}مشاهده ميكنيد كه در قسمتي كه كد پرنور و يا اين كه خاموش شدن WiFi را نوشته ايد، گونه هاي اتفاق افتاده ميباشد.
اين غلط بهاين ادله ميباشد كه نرم افزار ما با اين كدهايي كه تا اينجا براي آن نوشتيم، دسترسي به كانال واي فاي را ندارد.براي دادن دسترسي به نرم افزار متبوع، مسير app -> manifests -> AndroidManifest.xml را برويد.بعد از آن كدهاي پايين را پيشين از تگ ذيل دسترسي برنامه به شرايط WiFi، به وب و دسترسي به تغيير تحول حالت WiFi را ميدهند.
برچسب: طراحي اپليكيشن،