بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
ارور skia decoder->decode returned false هنگام دانلود
با عرض سلام
هنگام دانلود فایل توسط دانلودر استاد زمانی که اینترنت قطع میشه این ارور : skia decoder->decode returned false در LogCat نمایش داده میشه و سایر دستورات اجرا نمیشند، شبیه به این میمونه که ترد در دستور زیر گیر میکنه :
کسی راه حلی داره؟
(len = inputStream.read(buffer))
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
Rabbit
11 سال پیش
+1
0
از کلاس connectionDetector زیر استفاده کن
public class ConnectionDetector {
private Context _context;
public ConnectionDetector(Context context) {
this._context = context;
}
public boolean isConnectingToInternet() {
ConnectivityManager connectivity = (ConnectivityManager) _context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null)
{
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED)
{
return true;
}
}
return false;
}
}
اگر اینترنت قطع بود به کاربر بگو که اینترنتت قطعِ
ConnectionDetector cnd = new ConnectionDetector(YourCurrentClass.this); if (cnd.isConnectingToInternet())
{ }
else
{ }
پاسخ به سوال
Rabbit
11 سال پیش
+1
0
5 ثانیه یکبار میشه، ولی سربار برنامه زیاد میشه از کلاس زیر استفاده کن. یک لیسنر که هروقت اینترنت قطع میشه میگه.
public class NetworkStateReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Log.d("app","Network connectivity change");
if(intent.getExtras()!=null) {
NetworkInfo ni=(NetworkInfo) intent.getExtras().get(ConnectivityManager.EXTRA_NETWORK_INFO);
if(ni!=null && ni.getState()==NetworkInfo.State.CONNECTED) {
Log.i("app","Network "+ni.getTypeName()+" connected");
}
}
if(intent.getExtras().getBoolean(ConnectivityManager.EXTRA_NO_CONNECTIVITY,Boolean.FALSE)) {
Log.d("app","There's no network connectivity");
}
}
}
و داخل منیفست بنویس:
<receiver android:name=".NetworkStateReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .