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



مشکل در کد نویسی و force close در اندرویدزمان کنونی: ۱۳۹۵/۰۹/۱۵، ۰۸:۵۵ ق.ظ
کاربران در حال بازدید این موضوع: 1 مهمان
نویسنده: kousha.nikkar
آخرین ارسال: kousha.nikkar
پاسخ 12
بازدید 1939

رتبه موضوع:
  • 2 رای - 3 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل در کد نویسی و force close در اندروید

مشکل در کد نویسی و force close در اندروید

#1
کسی میدونه مشکل کد من چیه که force close میده برنامه؟؟؟؟
کد رو مشاهده بفرمایید:

کد پی‌اچ‌پی:
@Override
    
protected void onCreate(Bundle savedInstanceState) {
        
super.onCreate(savedInstanceState);
        
setContentView(R.layout.activity_main);
        
        
        

        
String mx getResources().getString(R.string.x);
        
String bn getResources().getString(R.string.x);
        while(
true){
            
           
ConnectivityManager cm = (ConnectivityManagergetSystemService(Context.CONNECTIVITY_SERVICE);
            
NetworkInfo netInfo cm.getActiveNetworkInfo();
            if (
netInfo != null && netInfo.isConnected()) {
                try {
                    
URL url = new URL("http://site.com/" mx);
                    
HttpURLConnection urlc = (HttpURLConnectionurl.openConnection();
                    
urlc.setConnectTimeout(3000);
                    
urlc.connect();
                    if (
urlc.getResponseCode() == 200) {
                        
                        
int t Integer.parseInt(mx);
                        
1;
                        
mx Integer.toString(t);
                    }
                    else{
                     
                        break;
                    }
                } catch (
MalformedURLException e1) {
                    
// TODO Auto-generated catch block
                    
e1.printStackTrace();
                } catch (
IOException e) {
                    
// TODO Auto-generated catch block
                    
e.printStackTrace();
                }
            }

        }
        
        
int i Integer.parseInt(mx);
        
int j Integer.parseInt(bn);
        
int h j;
        if( 
!= 0){
                
               
//my codes
                
            



آخه چرا force close??????
پاسخ

مشکل در کد نویسی و force close در اندروید

#2
سلام.
بنده یک نگاه کلی به کد شما انداختم. خط زیر از کدها را ببینید :

کد پی‌اچ‌پی:
while(true){ 

چون شرط برابر true قرار داده شده، یک حلقه بینهایت توسط while ساخته می شود. یعنی مرتبا کدهای حلقه اجرا می شوند. معمولا شرط حلقه while را به گونه ای می نویسند که بعد از جندین بار اجرا، شرط برآورده شده و از حلقه خارج شویم و ادامه کدها اجرا شوند.

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

مشکل در کد نویسی و force close در اندروید

#3
درست میفرمایید ولی من حلقه رو در خط زیر شکستم که ادامه کد ها اجرا بشن
کد پی‌اچ‌پی:
else{          
    break;
    } 
من اصلاً متوجه نمیشم چرا force close میده برنامه

اینکه از کلاس استفاده نکردم که مشکلی نیست نه؟؟؟؟
توی MainActivity.java این کد رو قرار دادم،،، مشکلی که نیست؟؟؟


 
پاسخ

مشکل در کد نویسی و force close در اندروید

#4
من توی فایل string ، این متغیر x رو هم تعریف کردم،،،، در کل مشکل کجاست؟؟؟ خیلی لازم دارم که بدونم ... لطفاً دوستان پاسخ بدید
پاسخ

مشکل در کد نویسی و force close در اندروید

#5
مشکل از کد های چک کردن اینترنت نیست؟؟؟؟ ناقص که نیستن؟؟
پاسخ

مشکل در کد نویسی و force close در اندروید

#6
تست کردم متوجه شدم مشکل از کدوم قسمت کد هست:
دوستان یک نظر به کد زیر بندازید ببینیم مشکلی میبینین که من توجه نکرده باشم؟؟؟
کد پی‌اچ‌پی:
if (netInfo != null && netInfo.isConnected()) {
            try {
                
URL url = new URL("mylink" mx);
                
HttpURLConnection urlc = (HttpURLConnectionurl.openConnection();
                
urlc.setConnectTimeout(3000);
                
urlc.connect();
                if (
urlc.getResponseCode() == 200) {
                    
                    
int t Integer.parseInt(mx);
                    
1;
                    
mx Integer.toString(t);
                }
                else{
                    
Toast.makeText(getApplicationContext(), "no"Toast.LENGTH_LONG).show();
                    
                }
            } catch (
MalformedURLException e1) {
                
// TODO Auto-generated catch block
                
e1.printStackTrace();
            } catch (
IOException e) {
                
// TODO Auto-generated catch block
                
e.printStackTrace();
            }
        } 
اینجا چیزی هست که ناقص باشه؟؟

 
پاسخ

مشکل در کد نویسی و force close در اندروید

#7
(۱۳۹۳/۱۱/۱۱, ۰۸:۵۵ ب.ظ)'kousha.nikkar' نوشته: درست میفرمایید ولی من حلقه رو در خط زیر شکستم که ادامه کد ها اجرا بشن
کد پی‌اچ‌پی:
else{          
    break;
    } 
من اصلاً متوجه نمیشم چرا force close میده برنامه

اینکه از کلاس استفاده نکردم که مشکلی نیست نه؟؟؟؟
توی MainActivity.java این کد رو قرار دادم،،، مشکلی که نیست؟؟؟


 

 


بله، ولی مشکل این است که شرط برای if صادق بوده (یعنی آنچه انتظار داریم) و دستور مربوط به else اجرا نمیشده. break رو باید در if ذکر می کردید (البته کاری به ماهیت کدها ندارم که آیا اجرای انها با حلقه while درست بوده یا نه، بلکه تنها در مورد ساختار حلقه while صحبت کردم). 

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

مشکل در کد نویسی و force close در اندروید

#8
 به هر حال من تست کردم و مطمئنم که مشکل توی این قسمت هست که در کد پایین مشاهده می کنید:
کد پی‌اچ‌پی:
if (netInfo != null && netInfo.isConnected()) {
            try {
                
URL url = new URL("mylink" mx);
                
HttpURLConnection urlc = (HttpURLConnectionurl.openConnection();
                
urlc.setConnectTimeout(3000);
                
urlc.connect();
                if (
urlc.getResponseCode() == 200) {
                    
                    
int t Integer.parseInt(mx);
                    
1;
                    
mx Integer.toString(t);
                }
                else{
                    
Toast.makeText(getApplicationContext(), "no"Toast.LENGTH_LONG).show();
                    
                }
            } catch (
MalformedURLException e1) {
                
// TODO Auto-generated catch block
                
e1.printStackTrace();
            } catch (
IOException e) {
                
// TODO Auto-generated catch block
                
e.printStackTrace();
            }
        } 

درواقع من میخوام توی این قسمت، یک لینک چک بشه که کد دسترسی 200 رو میده یا نه... جور دیگه ای باید بنویسمش؟؟؟؟ به نظرم مشکل توی قسمت try ایجاد شده... لطفاً یاری برسونید چطور بنویسم که try حذف بشه؟؟
پاسخ

مشکل در کد نویسی و force close در اندروید

#9
اصلاً من بخوام یه دستور شرطی بنویسم که کد ریسپانس 200 یک لینک رو چک کنه بدون هیچ چیز اضافی چطور باید بنویسم؟؟؟
 
پاسخ

مشکل در کد نویسی و force close در اندروید

#10
حداقل یه نفر بهم بگه این try چیه؟؟؟ تا حالا آشنایی باهاش پیدا نکردم
پاسخ

مشکل در کد نویسی و force close در اندروید

#11
(۱۳۹۳/۱۱/۱۲, ۱۱:۳۰ ب.ظ)'kousha.nikkar' نوشته: حداقل یه نفر بهم بگه این try چیه؟؟؟ تا حالا آشنایی باهاش پیدا نکردم
 

در این موارد، بهتر است در عنوان کلیدها (مبحث ها جستجو) کنید.
دو کلید زیر را بخوانید :

کلید شماره 345

کلید شماره 2844

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

مشکل در کد نویسی و force close در اندروید

#12
ممنون از ارسال لینک کلید های مربوط به try
حالا میتونم درک کنم قضیه چیه...
ببینید با توجه به کلید بالا و چند تا آزمایش متوجه شدم که کد زیر ، وقتی در try قرار میگیره ، اون رو به قسمت catch میبره و نمیزاره ادامه کد ها اجرا بشن...
اینو چیکار کنم؟؟؟؟ آخه چه مشکلی توی این کد هست؟
کد پی‌اچ‌پی:
URL url = new URL("لینک");
                                
HttpURLConnection urlc = (HttpURLConnectionurl.openConnection();
                                
urlc.setConnectTimeout(3000);
                                
urlc.connect(); 

لطفاً بهم بگید مشکل چی هست دوستان
پاسخ


پرش به انجمن:


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

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)