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


رتبه موضوع:
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
نحوه اجرا کردن کدهای کلاس (در اندروید)

نحوه اجرا کردن کدهای کلاس (در اندروید)

#1
بر اساس کلید زیر که مربوط به چک کردن اینترنت میشه (روش اول):
http://www.kelidestan.com/keys/keys.php?key=287

لطفاً توضیح بدید که منظور از این قسمت که پایین نوشتم چیست؟؟
________________________________________________________________________________________________________
دقت شود که در کد بالا، خط زیر، کدهایی است که در صورت درست بودن اتصال به اینترنت، می خواهیم اجرا شود : new GetData().execute();پس یک کلاس با نام GetData باید بسازید که حاوی کدهای لازم باشد (که اگر اتصال به اینترنت، درست بود، اجرا شود و در غیر این صورت، پیامی توسط روش Toast به کاربر نمایش داده شود.)نحوه اجرا کردن کدهای کلاس NetCheck (ساخت شیء (object) از روی این کلاس و سپس اجرا کردن کدهای آن)، برای چک کردن اینترنت، به صورت زیر می باشد : new NetCheck().execute();
 
پاسخ

نحوه اجرا کردن کدهای کلاس (در اندروید)

#2
سلام.
اجازه بدهید بخشی از آن کدها را ذکر کنم :

کد پی‌اچ‌پی:
if(th == true){
                        
nDialog.dismiss();
                        new 
GetData().execute();
                    }
                    else{
                        
nDialog.dismiss();
                        
Toast.makeText(getApplicationContext(), "Error in Network Connection"Toast.LENGTH_SHORT).show();
                    } 

به کلید مورد نظر رفته و این بخش از کدها را بیابید. 
در کد بالا، تعیین کرده ایم که اگر گوشی به اینترنت متصل بود، کد زیر اجرا گردد :

کد پی‌اچ‌پی:
nDialog.dismiss();
new 
GetData().execute(); 

و اگر به اینترنت متصل نبود، کد زیر اجرا شود :

کد پی‌اچ‌پی:
nDialog.dismiss();
Toast.makeText(getApplicationContext(), "Error in Network Connection"Toast.LENGTH_SHORT).show(); 

که در هر دو مورد، خط اول کدها، مربوط به عدم نمایش Dialog است. یعنی Dialog دیگر نمایش داده نشود. اما برای هنگامی که متصل به اینترنت است، کد زیر بعد از آن اجرا می شود :

کد پی‌اچ‌پی:
new GetData().execute(); 

که از کلاسی با نام GetData (که خود کاربر می تواند آن را به دلخواه تعریف کند و کدهای مورد نظرش را در آن کلاس بنویسد)، یک شیء ساخته و آن را اجرا کرده ایم. اکنون اگر با مفاهیم کلاس (Class) و شیء آشنایی ندارید، می توانید کدهای مورد نظر خود را جایگزین آن کنید.
بد نیست نگاهی به کلید زیر بیندازید :

کلید شماره 2408 

در مورد کلاس ها (Classes)، دسته بندی زیر را ببینید :

http://www.kelidestan.com/keys/categorie...ategory=30

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

نحوه اجرا کردن کدهای کلاس (در اندروید)

#3
سپاس سپاس سپاااس
پاسخ
 سپاس شده توسط admin

نحوه اجرا کردن کدهای کلاس (در اندروید)

#4
چیزی رو فراموش نکردید؟

برای اجرای کلاسی که نوشتم ، اگر بعد از کد زیر در MainActivity:
کد پی‌اچ‌پی:
@Override
    
protected void onCreate(Bundle savedInstanceState) {
        
super.onCreate(savedInstanceState);
        
setContentView(R.layout.activity_main); 

این کد رو بنویسم:
کد پی‌اچ‌پی:
new NetCheck().execute(); 

کلاس اجرا میشه؟؟ امتحان کردم نشد

در واقع میخوام به محض اجرای برنامه اندرویدم، این کلاس اجرا بشه، چ کنم؟

نمای کلی کد رو ببینید:
کد پی‌اچ‌پی:
public class MainActivity extends Activity {
    
    
    private class 
NetCheck extends AsyncTask<String,String,Boolean>{
    
    @
Override
    
protected Boolean doInBackground(String... args){

        
ConnectivityManager cm = (ConnectivityManagergetSystemService(Context.CONNECTIVITY_SERVICE);
        
NetworkInfo netInfo cm.getActiveNetworkInfo();
        if (
netInfo != null && netInfo.isConnected()) {
            try {
                
URL url = new URL("http://www.google.com");
                
HttpURLConnection urlc = (HttpURLConnectionurl.openConnection();
                
urlc.setConnectTimeout(3000);
                
urlc.connect();
                if (
urlc.getResponseCode() == 200) {
                    return 
true;
                }
            } catch (
MalformedURLException e1) {
                
// TODO Auto-generated catch block
                
e1.printStackTrace();
            } catch (
IOException e) {
                
// TODO Auto-generated catch block
                
e.printStackTrace();
            }
        }
        return 
false;

    }
    
    

    @
Override
    
protected void onPostExecute(Boolean th){

        if(
th == true){
            
            
Toast.makeText(getApplicationContext(), "yes"Toast.LENGTH_SHORT).show();
        }
        else{
            
            
Toast.makeText(getApplicationContext(), "Error in Network Connection"Toast.LENGTH_SHORT).show();
        }
    }
    }

    
    
    @
Override
    
protected void onCreate(Bundle savedInstanceState) {
        
super.onCreate(savedInstanceState);
        
setContentView(R.layout.activity_main);
            

        new 
NetCheck().execute();



به این صورت باید کلاس اجرا بشه؟ آخه نشد... چجوری میگیم که اجرا بشه؟
 

 
پاسخ
 سپاس شده توسط شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


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