Autore Topic: Problema caricamento immagini remote  (Letto 506 volte)

Offline gui892

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy s2
Problema caricamento immagini remote
« il: 17 Marzo 2012, 13:21:42 CET »
0
Salve a tutti,
volevo fare una galleria d'immagini prese da un server remoto.Il mio problema è che a volte, nonostante la connessione internet sia attiva(wifi) , non visualizza le immagini,ne le icone.Ho provato ad aggiungere un bottone per ricaricare la gallery ma non sempre risolve la situazione,allora devo chiudere l'applicazine,chiudere il wifi,attivarlo di nuovo e poi riaprire l'applicazione e così carica tutte le immagini senza problemi.Volevo capire come mai.Per maggior chiarezza posto il codice che ho scritto.
Codice (Java): [Seleziona]
public  class immagini extends Activity  
{
        public String[] icon={
                   
            "[url=http://web.tiscali.it/guido892/thew/ic/img1.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img2.jpg","http://web.tiscali.it/guido892/thew/ic/img3.jpg"]Tiscali Webspace[/url]
            , "[url=http://web.tiscali.it/guido892/thew/ic/img4.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img5.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img6.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img7.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img8.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img9.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img10.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img11.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img12.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img13.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img14.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img15.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img16.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img17.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img18.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img19.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img20.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img21.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img22.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img23.jpg"]Tiscali Webspace[/url],
            "[url=http://web.tiscali.it/guido892/thew/ic/img24.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ic/img25.jpg"]Tiscali Webspace[/url]
               
    };
         public String[] mStrings={
                           
                    "[url=http://web.tiscali.it/guido892/thew/hd/img1.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img2.jpg","http://web.tiscali.it/guido892/thew/hd/img3.jpg"]Tiscali Webspace[/url]
                    , "[url=http://web.tiscali.it/guido892/thew/hd/img4.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img5.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img6.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img7.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img8.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img9.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img10.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img11.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img12.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img13.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img14.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img15.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img16.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img17.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img18.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img19.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img20.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img21.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img22.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img23.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/hd/img24.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/hd/img25.jpg"]Tiscali Webspace[/url]
                       
            };
         public String[] mStrings1={
                           
                    "[url=http://web.tiscali.it/guido892/thew/md/img1.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img2.jpg","http://web.tiscali.it/guido892/thew/md/img3.jpg"]Tiscali Webspace[/url]
                    , "[url=http://web.tiscali.it/guido892/thew/md/img4.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img5.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img6.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img7.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img8.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img9.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img10.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img11.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img12.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img13.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img14.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img15.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img16.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img17.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img18.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img19.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img20.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img21.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img22.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img23.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/md/img24.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/md/img25.jpg"]Tiscali Webspace[/url]
                       
            };
         public String[] mStrings2={
                           
                    "[url=http://web.tiscali.it/guido892/thew/ld/img1.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img2.jpg","http://web.tiscali.it/guido892/thew/ld/img3.jpg"]Tiscali Webspace[/url]
                    , "[url=http://web.tiscali.it/guido892/thew/ld/img4.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img5.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img6.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img7.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img8.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img9.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img10.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img11.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img12.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img13.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img14.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img15.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img16.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img17.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img18.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img19.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img20.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img21.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img22.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img23.jpg"]Tiscali Webspace[/url],
                    "[url=http://web.tiscali.it/guido892/thew/ld/img24.jpg"]Tiscali Webspace[/url], "[url=http://web.tiscali.it/guido892/thew/ld/img25.jpg"]Tiscali Webspace[/url]
                       
            };
        private static final String ADMOB_ID2 = "a14f3e67f7b21fb";
                 private AdView adView;
               

        final Context context = this;
       
        Gallery list;
        EditText input;
        LazyAdapter adapter;
        static final int CUSTOM_DIALOG = 0;
       
        AlertDialog.Builder alert;
        @Override    
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
            setContentView(R.layout.immagini);
            if (AppStatus.getInstance(this).isOnline(this)) {

               
                } else {  
                        LayoutInflater inflater = getLayoutInflater();
                              View layout = inflater.inflate(R.layout.toast2,
                                                             (ViewGroup) findViewById(R.id.layout_toast1));
                            Toast toast = new Toast(getApplicationContext());
                          toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
                          toast.setDuration(Toast.LENGTH_SHORT);
                          toast.setView(layout);
                          toast.show();
                        Log.v("Home", "############################You are not online!!!!");    
                }
            input = new EditText(this);
            alert = new AlertDialog.Builder(this);
             list=(Gallery)findViewById(R.id.gallery1);
             adapter=new LazyAdapter(this, icon);
             list.setAdapter(adapter);
             Button b=(Button)findViewById(R.id.button1);
             b.setOnClickListener(listener);
             DisplayMetrics metrics = new DisplayMetrics();
             getWindowManager().getDefaultDisplay().getMetrics(metrics);
             final int density = metrics.densityDpi;
           
             list.setOnItemClickListener(new OnItemClickListener() {
 
                 public void onItemClick(AdapterView<?> arg0, View arg1, final int arg2,
                                 long arg3) {
                               
                          ImageView imageView = (ImageView) findViewById(R.id.imageView1);
                          try {
                           if (density==240){
                                 
                           URL aURL = new URL(mStrings[arg2]);
                          URLConnection conn = aURL.openConnection();
                           conn.connect();
                           int length = conn.getContentLength();
                         
                           InputStream is = conn.getInputStream();
                           /* Buffered is always good for a performance plus. */
                           BufferedInputStream bis = new BufferedInputStream(is);
                           /* Decode url-data to a bitmap. */
                           Bitmap bm = BitmapFactory.decodeStream(bis);
                           bis.close();
                           is.close();
                           /* Apply the Bitmap to the ImageView that will be returned. */
                           imageView.setImageBitmap(bm);}
                           if (density==160){
                               URL aURL = new URL(mStrings1[arg2]);
                              URLConnection conn = aURL.openConnection();
                               conn.connect();
                               InputStream is = conn.getInputStream();
                               /* Buffered is always good for a performance plus. */
                               BufferedInputStream bis = new BufferedInputStream(is);
                               /* Decode url-data to a bitmap. */
                               Bitmap bm = BitmapFactory.decodeStream(bis);
                               bis.close();
                               is.close();
                               
                               /* Apply the Bitmap to the ImageView that will be returned. */
                               imageView.setImageBitmap(bm);}
                           if (density==120){
                               URL aURL = new URL(mStrings2[arg2]);
                              URLConnection conn = aURL.openConnection();
                               conn.connect();
                               InputStream is = conn.getInputStream();
                               /* Buffered is always good for a performance plus. */
                               BufferedInputStream bis = new BufferedInputStream(is);
                               /* Decode url-data to a bitmap. */
                               Bitmap bm = BitmapFactory.decodeStream(bis);
                               bis.close();
                               is.close();
                               /* Apply the Bitmap to the ImageView that will be returned. */
                               imageView.setImageBitmap(bm);}
                   } catch (IOException e) {
                       
                           Log.e("DEBUGTAG", "Remtoe Image Exception", e);}
       
            ImageView imageView1 = (ImageView) findViewById(R.id.imageView1);
           
           imageView1.setOnClickListener(new Button.OnClickListener(){
                 
                 
               public void onClick(View arg0) {
                 AlertDialog alertDialog;
                  final AlertDialog.Builder builder;
                LayoutInflater inflater = (LayoutInflater) immagini.this.getSystemService(LAYOUT_INFLATER_SERVICE);
                                View layout = inflater.inflate(R.layout.custom,(ViewGroup) findViewById(R.id.layout_root));
                                Button but1 = (Button) layout.findViewById(R.id.button1);
                                Button but2 = (Button) layout.findViewById(R.id.button2);
                       
                                builder = new AlertDialog.Builder(immagini.this);
                                builder.setView(layout);
                                alertDialog = builder.create();
                                but1.setOnClickListener(new OnClickListener() {
                                public void onClick(View v) {
                                   if (density==240){
                                         downloadFile(mStrings[arg2]);}
                                 if (density==160){
                                         downloadFile(mStrings1[arg2]);}
                                 if (density==120){
                                         downloadFile(mStrings2[arg2]);}
                     
                          }
                                });
               
                                        but2.setOnClickListener(new OnClickListener() {
                                               
                                               
                                                public void onClick(View v) {
                                                         
                                                         input.setHint("inserire nome ");
                                                         alert.setView(input);
                                                         
                                                alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                                                       
                                                       
                                                public void onClick(DialogInterface dialog, int whichButton) {
                                                if (density==240){
                                                                         downloadFile1(mStrings[arg2]);}
                                            if (density==160){
                                                                 downloadFile1(mStrings1[arg2]);}
                                           if (density==120){
                                                         downloadFile1(mStrings2[arg2]);}
                                     
                                       }
                                                        });
                                               

                                                alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                                                  public void onClick(DialogInterface dialog, int whichButton) {
                                                        int value = 4;
                                                         Intent intent4=new Intent(getApplicationContext(),ThewalkindeadActivity.class);
                                                   String pkg=getPackageName();
                                                           intent4.putExtra(pkg+".myString", value);
                                                         startActivity(intent4);                                           
                                                         }
                                                });
                                               
                                            alert.show();
                                                   }
                                });
                               
                                        builder.show();
                                       
                                       
                                }
                        });
                         }
                                });
             
               
            adView = new AdView(this, AdSize.BANNER,ADMOB_ID2);

                    // Lookup your LinearLayout assuming it’s been given
                    // the attribute android:id="@+id/mainLayout"
                    LinearLayout layout = (LinearLayout)findViewById(R.id.linearlayout);
                    layout.addView(adView);

                    // Initiate a generic request to load it with an ad
                    adView.loadAd(new AdRequest());
                  }
     
                  public void onDestroy() {
                    adView.destroy();
                    super.onDestroy();
                   
                }
                  Bitmap bmImg;

                    void downloadFile(String mStrings2) {
                       
                        URL myFileUrl = null;
                        try {
                            myFileUrl = new URL(mStrings2);
                        } catch (MalformedURLException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                        try {
                            HttpURLConnection conn = (HttpURLConnection) myFileUrl
                                    .openConnection();
                            conn.setDoInput(true);
                            conn.connect();
                           
                            int length = conn.getContentLength();
                            if (length==0){conn.disconnect();}else {  
                            InputStream is = conn.getInputStream();

                            bmImg = BitmapFactory.decodeStream(is);
                            // this.imView.setImageBitmap(bmImg);
                        }} catch (IOException e) {
                               
                                 Log.e("DEBUGTAG", "Remtoe Image Exception", e);}
                        File sdImageMainDirectory = new File(
                                Environment.getExternalStorageDirectory() + "/thew");
                            if (!sdImageMainDirectory.exists()) {
                                sdImageMainDirectory.mkdirs();
                            }
                        try {
                            String filepath=Environment.getExternalStorageDirectory()+ "/thew";
                            FileOutputStream fos = new FileOutputStream(filepath + "/Wallpaper.jpg");            
                            bmImg.compress(Bitmap.CompressFormat.JPEG, 95, fos);
                            fos.flush();
                            fos.close();

                            Context context = this.getBaseContext();
                            context.setWallpaper(bmImg);
                         
                                LayoutInflater inflater = getLayoutInflater();
                              View layout = inflater.inflate(R.layout.toast1,
                                                             (ViewGroup) findViewById(R.id.layout_toast1));
                            Toast toast = new Toast(getApplicationContext());
                          toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
                          toast.setDuration(Toast.LENGTH_LONG);
                          toast.setView(layout);
                          toast.show();
                        int value = 4;
                 Intent intent4=new Intent(getApplicationContext(),ThewalkindeadActivity.class);
           String pkg=getPackageName();
           intent4.putExtra(pkg+".myString", value);
           startActivity(intent4);
           finish();
                        } catch (Exception e) {
                                 Log.e("DEBUGTAG", "Remote Image Exception", e);}

                    }
                    Bitmap bmImg1;

                    void downloadFile1(String mStrings2) {
                         
                        String value = input.getText().toString();
                        URL myFileUrl = null;
                        try {
                            myFileUrl = new URL(mStrings2);
                        } catch (MalformedURLException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                        try {
                            HttpURLConnection conn = (HttpURLConnection) myFileUrl
                                    .openConnection();
                            conn.setDoInput(true);
                            conn.connect();
                            int length = conn.getContentLength();
             
                            InputStream is = conn.getInputStream();

                            bmImg = BitmapFactory.decodeStream(is);
                            // this.imView.setImageBitmap(bmImg);
                          } catch (IOException e) {
                               
                                 Log.e("DEBUGTAG", "Remtoe Image Exception", e);
                        }
                        File sdImageMainDirectory = new File(
                                Environment.getExternalStorageDirectory() + "/thew");
                            if (!sdImageMainDirectory.exists()) {
                                sdImageMainDirectory.mkdirs();
                            }
                        try {
                     
                            String filepath=Environment.getExternalStorageDirectory()+ "/thew";
                            FileOutputStream fos = new FileOutputStream(filepath+"/"+value+".jpg");            
                            bmImg.compress(Bitmap.CompressFormat.JPEG, 95, fos);
                            fos.flush();
                            fos.close();
                           
                                LayoutInflater inflater = getLayoutInflater();
                                      View layout = inflater.inflate(R.layout.toast,
                                                                     (ViewGroup) findViewById(R.id.layout_toast));
                                    Toast toast = new Toast(getApplicationContext());
                                  toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
                                  toast.setDuration(Toast.LENGTH_LONG);
                                  toast.setView(layout);
                                  toast.show();
                                        int value1 = 4;
                                         Intent intent4=new Intent(getApplicationContext(),ThewalkindeadActivity.class);
                                   String pkg=getPackageName();
                                   intent4.putExtra(pkg+".myString", value1);
                                   startActivity(intent4);
                                   finish();
                        } catch (Exception e) {
                                 Log.e("DEBUGTAG", "Remtoe Image Exception", e);
                           
                        }

                    }

                   
                   
                    public void onDestroy1()
                    {
                        list.setAdapter(null);
                        super.onDestroy();
                    }
                   
                    public OnClickListener listener=new OnClickListener(){
                        public void onClick(View arg0) {
                                int value = 4;
                                 Intent intent4=new Intent(getApplicationContext(),ThewalkindeadActivity.class);
                           String pkg=getPackageName();
                           intent4.putExtra(pkg+".myString", value);
                            adapter.imageLoader.clearCache();
                            adapter.notifyDataSetChanged();
                             startActivity(intent4);
                           finish();
                        }
                    };

}