انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
بررسی اتصال به اینترنت در چند اکتیویتی، در برنامه نویسی اندروید

بررسی اتصال به اینترنت در چند اکتیویتی، در برنامه نویسی اندروید

#9
قبل از توضیحات جدید ابتدا چند نکته را تذکر بدم :
1- چند ارسال را حذف یا تصحیح کردم چون راهنمایی آنها غلط بود.
2- دو حالت private و public تفاوتی در این حالت نداشتند.
3- لطفا در صفحه اصلی انجمن، در ابتدای صفحه، راهنما در مورد صحیح نوشتن کدها در ارسال را بخوانید و با آن شیوه کدها را در ارسال ها بنویسید (کدهاتون به هم ریخته هستند و خوندنشون واقعا سخته).
4- بنده یک پروژه اندروید ساختم تا خودم مشکلات را بررسی کنم. کدهای کلاس را به صورت زیر نوشتم (نام کلاس من با مال شما فرق دارد، مراقب این تفاوت ها باشید) :

کد:
package com.kelidestan.newclass;

import junit.framework.TestCase;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.AsyncTask;
import android.widget.Toast;

public class MyClass extends TestCase {
    
    public Context context;
        
    public MyClass (Context context) {
        this.context = context;  
    }
    
    public void ShowAlertDialog() {
         AlertDialog.Builder alertDialog = new AlertDialog.Builder(this.context);
         alertDialog.setTitle("string");
         alertDialog.setMessage("string");
         alertDialog.setIcon(R.drawable.ic_launcher);
         // Setting Positive "Yes" Button
         alertDialog.setPositiveButton("string",
         new DialogInterface.OnClickListener() {
         public void onClick(DialogInterface dialog, int which) {
         dialog.cancel();
         new NetCheck().execute();
         }
         });
         // Setting Negative "NO" Button
         alertDialog.setNegativeButton("string",
         new DialogInterface.OnClickListener() {
         public void onClick(DialogInterface dialog, int which) {
         // Write your code here to invoke NO event
         dialog.cancel();
         }
         });
         // Showing Alert Message
         alertDialog.show();
         }

         public class NetCheck extends AsyncTask<String,String,Boolean>
         {


         /**
         * Gets current device state and checks for working internet connection by trying .
         **/
         @Override
         protected Boolean doInBackground(String... args){

         ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
         NetworkInfo ni = cm.getActiveNetworkInfo();
         if (ni == null) {
         ShowAlertDialog();
         return false;
         } else
             context.startActivity(new Intent(context, MyActivity.class));
         return true;
         }

         }

}

در این حالت برنامه eclipse هیچ پیام خطایی نمایش نمی دهد. با توجه به اینکه خیلی گرفتارم، اجرا کردن برنامه اندروید را به عهده خودتان می گذارم. اگر بازم مشکلی بود، این بار به طور صحیح، کدهای کلاس و همچنین چگونگی اجرا کردن آن در Activity را در ارسالتان قرار بدهید تا بررسی کنم (لطفا کدها را با همان روشی که عرض کردم در ارسال قرار بدهید).

در ارسال های قبلی (آنهایی که حذف کردم) کمی شتاب زده پاسخ دادم که به این دلیل بود که همزمان در حال بررسی نرم افزاری دیگر بودم (حسابی فکرم مشغول بود) و نمی توانستم کدها را به طور دقیق تست کنم، به هر حال امیدوارم مشکلتان با این ارسال دیگر حل بشود.

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ


پیام‌های این موضوع
RE: بررسی اتصال به اینترنت در چند اکتیویتی، در برنامه نویسی اندروید - توسط admin - ۱۳۹۳/۰۸/۰۹, ۰۶:۵۱ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان