2014-07-09 1 views
0

De ci-dessous le code que je suis en mesure d'obtenir l'image sur imageview du serveur en utilisant l'URL de cette image. Maintenant, je veux définir comme fond d'écran de cette image. S'il vous plaît fournir une solution .... de sorte que je serai en mesure de définir le fond d'écran sans télécharger l'image dans mon téléphone.Comment définir le fond d'écran de l'image obtenir de l'URL dans Android

onCreate() method 
{ 
image = (ImageView) findViewById(R.id.image); 
new DownloadImage().execute(URL); 
} 

private class DownloadImage extends AsyncTask<String, Void, Bitmap> { 

     @Override 
     protected void onPreExecute() { 
      super.onPreExecute(); 
      // Create a progressdialog 
      mProgressDialog = new ProgressDialog(MainActivity1.this); 
      mProgressDialog.setTitle("Downloading...."); 
      mProgressDialog.setMessage("Loading..."); 
      mProgressDialog.setIndeterminate(false); 
      mProgressDialog.show(); 
     } 

     @Override 
     protected Bitmap doInBackground(String... URL) { 

      String imageURL = URL[0]; 

      Bitmap bitmap = null; 
      try { 
       // Download Image from URL 
       InputStream input = new java.net.URL(imageURL).openStream(); 
       // Decode Bitmap 
       bitmap = BitmapFactory.decodeStream(input); 
      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
      return bitmap; 
     } 

     @Override 
     protected void onPostExecute(Bitmap result) { 
      // Set the bitmap into ImageView 
      image.setImageBitmap(result); 
      // Close progressdialog 
      mProgressDialog.dismiss(); 
     } 
    } 

Répondre

1
WallpaperManager wpm = WallpaperManager.getInstance(context); 
InputStream ins = new URL("absolute/path/of/image").openStream(); 
wpm.setStream(ins); 

vous devez ajouter l'autorisation pour cette « URL ne peut pas résoudre à un type »

<uses-permission android:name="android.permission.SET_WALLPAPER"></uses-permission> 
+0

montrant – abhi

+1

@ user3431980 vous devez changer dans votre code que vous retournez bitmap au lieu de juste retourne InputStream et ce code écrit dans la méthode onPostExecute – MilapTank

Questions connexes