دانلود نشدن عکسها در موبایل
سلام
من یه برنامه نوشتم که تعدادی اطلاعات رو از سرور میگیره و میریزه تو لیست ویو
بعد عکسها رو هم دانلود میکنه و میریزه تو یه دایرکتوری و بعد سر جاش نشون میده
این برنامه رو ایمولاتور خود اکلیپس کار میکنه و اما وقتی میارمش رو موبایل کار نمیکنه
پرمیشن ها هم درسته یعنی دسترسی بع اینترنت و اکسترنال استوریج هم دارم تو منیفست
و موبایلم هم دسترسی کامل به اینترنت داره سرورم هم کار میکنه فقط عمسها نشون داده نمیشه تو موبایل
این مشکل میتونه از کجا باشه ؟
شما ابتدا باید طریقه ارتباط با سرور، طریقه دانلود عکس ها، محتوای کد آداپتر و طریقه نمایش عکس هارو بررسی کنید، ببینید مشکل از کدوم بخشه، بعد که فهمیدید مشکل از کجاست میتونید کد اون بخش رو بذارید تا کمکتون کنیم، پیشنهاد میکنم حتما از Picassa برای دانلود و نمایش عکس ها استفاده کنید.
package com......;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Set;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.util.Log;
import android.widget.ImageView;
public class DownloadManager {
public static ArrayList<String> urls = new ArrayList<String>();
public static OnDownloadCompleteListener downloadCompleteListener;
public static void copyFile(String sourceFile, String destinationFile) {
FileInputStream inputStream = null;
FileOutputStream outputStream = null;
try {
inputStream = new FileInputStream(sourceFile);
outputStream = new FileOutputStream(destinationFile);
byte[] buffer = new byte[G.DOWNLOAD_BUFFER_SIZE];
int len;
while ((len = inputStream.read(buffer)) > 0) {
outputStream.write(buffer, 0, len);
}
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
} finally {
if (inputStream != null) {
try {
inputStream.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
if (outputStream != null) {
try {
outputStream.flush();
outputStream.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
}
public static void initialize() {
downloadCompleteListener = new OnDownloadCompleteListener() {
@Override
public void onDownloadComplete(String url, String localPath) {
// Log.i("LOG", "Image Download Complete, Original URL: " + url + ", Save Path: " + localPath);
String newPath = localPath.replace("/temp/", "/final/");
copyFile(localPath, newPath);
String filename = HelperString.getFileName(localPath);
new File(localPath).delete();
Set<ImageView> imageViews = AdapterActivity.imageMap.keySet();
for (ImageView imageView: imageViews) {
if (AdapterActivity.imageMap.get(imageView).equals(filename)) {
if (imageView != null) {
BitmapFactory.Options options = new BitmapFactory.Options();
// options.inSampleSize = 8;
Bitmap bitmap = BitmapFactory.decodeFile(newPath, options);
imageView.setImageBitmap(bitmap);
}
}
}
}
};
}
public static void addToDownloadList(String url, ImageView imgLogo) {
String filename = HelperString.getFileName(url);
// AdapterActivity.imageMap(imgLogo, filename);
if (urls.contains(url)) {
return;
}
if (new File(G.DIR_FINAL + "/" + filename).exists()) {
return;
}
urls.add(url);
DownloadRequest downloadRequest = new DownloadRequest()
.downloadPath("http://www.androidinfo.ir/ssapp/" + url)
.filepath(G.DIR_TEMP + "/" + filename)
.listener(downloadCompleteListener)
.download();
}
}
مشکل من عجیبتر شد :
برنامه ای نوشتم که یه سری اطلاعات رو روی یک لیست ویو نشون میده
دانلود در هم کار میکنه و عکسها و متنها رو از سرور نشون میده
اما یه مشکل عجیب دارم
من موقع شروع پروژه اندروید 2.2 رو انتخاب کردم و توی منیفست هم SDk = 8 هستش
اما برنامه روی گوشی های ورژن 2 فقط کار میکنه و عکسها رو دانلود میکنه و روی گوشی های ورژنهای دیگه عکسها رو دانلود نمیکنه
مشکل از کجا میتونه باشه به نظرتون !!!!!!!!!!؟؟؟؟؟؟؟؟؟؟
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
