نحوه گرفتن Ping از یک آدرس
سلام دوستان
من قصد دارم ping چند تا سایت و ip رو بگیرم چطوریه؟
میخام اینطوری کار کنه که مثلا اگه ping 8.8.8.8 برقرار بود بگه ok یا مثلا اگه yahoo.com پینگ داد یه toast باز بشه.
مرسی
من کلی سرچ کردم < بعضی کدهایی هم پیدا کردم که جواب میداد <
اما این رو ترجیح میدم <
تست کنید < تا زمانی که اینترنت وصل هست < ping میشه و زمانی که قطع میکنید < با کمی تاخیر < کلی Faild لاگ میده و بعد دوباره توقف و دوباره کلی Faild ، حالا اگر اینترنت رو وصل کنید < با کمی تاخیر Ping شروع میشه < البته بعضی موقع با قطع شدن اینترنت لاگ مربوط به Faild داده نمیشه (شاید تاخیر زیادی داشته باشه) ولی در شرایطی که اینترنت قطع هست اصلا لاگ ping رو نمیبینید
پس بهتره سعی کنید در قسمت catch کد هاتون رو قرار ندید < چون بعضی موقع تاخیر از 10 ثانیه هم بیشتر میشه
از همون قسمت Try استفاده کنید < و کدهایی که باید اجرا بشوند رو در اینجا قرار بدید < یا یک مقدار رو True کنید <
جالبه که خود پینگ شدن کمی تاخیر داره < و با آهنگی خاص Log هارو میبینید <
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
while (true) {
try {
URL url = new URL("http://www.google.com");
HttpURLConnection urlConnect = (HttpURLConnection) url.openConnection();
urlConnect.getContent();
Log.i("LOG", "ping " + url);
}
catch (Exception e) {
Log.i("LOG", "Connect Faild");
}
}
}
});
thread.start();
حالا به نظر شما استفاده از این کد در یک Thread و قرار دادن در برنامه معقول هست ؟
این Thread برای همیشه تکرار میشه <
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .