2016-03-25 18 views
0

Sohbet uygulamasında resim mesajı göndermek istiyorum, böylece Flickr'a yüklemeyi ve statik URL'yi buradan almayı planlıyorum, sonra bu url'yi başka bir cihaza gönderebiliyorum (ve DB'ye de kaydedin). https://up.flickr.com/services/upload/Flickr'a resim yükle ve bunun URL'sini al

Ama aynı zamanda görüntüleri bunun için parametreyi ayarlamak ve kaydetmek için bilmiyorum:

Bundan API olduğunu biliyoruz. Bunun için bir çözümü olan var mı?

Bu Yükle Görev hakkında benim sınıftır:

yanında
public class UploadPhotoTask extends AsyncTask<OAuth, Void, String> { 
    /** 
    * 
    */ 
    private final FlickrjActivity flickrjAndroidSampleActivity; 
    private File file; 

    // private final Logger logger = LoggerFactory 
    // .getLogger(UploadPhotoTask.class); 

    public UploadPhotoTask(FlickrjActivity flickrjAndroidSampleActivity, 
      File file) { 
     this.flickrjAndroidSampleActivity = flickrjAndroidSampleActivity; 
     this.file = file; 
    } 

    /** 
    * The progress dialog before going to the browser. 
    */ 
    private ProgressDialog mProgressDialog; 

    @Override 
    protected void onPreExecute() { 
     super.onPreExecute(); 
     mProgressDialog = ProgressDialog.show(flickrjAndroidSampleActivity, 
       "", "Uploading..."); //$NON-NLS-1$ //$NON-NLS-2$ 
     mProgressDialog.setCanceledOnTouchOutside(true); 
     mProgressDialog.setCancelable(true); 
     mProgressDialog.setOnCancelListener(new OnCancelListener() { 
      @Override 
      public void onCancel(DialogInterface dlg) { 
       UploadPhotoTask.this.cancel(true); 
      } 
     }); 
    } 

    /* 
    * (non-Javadoc) 
    * 
    * @see android.os.AsyncTask#doInBackground(Params[]) 
    */ 
    @Override 
    protected String doInBackground(OAuth... params) { 
     OAuth oauth = params[0]; 
     OAuthToken token = oauth.getToken(); 

     try { 
      Flickr f = FlickrHelper.getInstance().getFlickrAuthed(
        token.getOauthToken(), token.getOauthTokenSecret()); 

      UploadMetaData uploadMetaData = new UploadMetaData(); 
      uploadMetaData.setTitle("" + file.getName()); 
      return f.getUploader().upload(file.getName(), 
        new FileInputStream(file), uploadMetaData); 
     } catch (Exception e) { 
      Log.e("boom!!", "" + e.toString()); 
      e.printStackTrace(); 
     } 
     return null; 
    } 

    /* 
    * (non-Javadoc) 
    * 
    * @see android.os.AsyncTask#onPostExecute(java.lang.Object) 
    */ 
    @Override 
    protected void onPostExecute(String response) { 
     if (mProgressDialog != null) { 
      mProgressDialog.dismiss(); 
     } 

     if (response != null) { 
      Log.e("", "" + response); 
     } else { 

     } 

     if (monUploadDone != null) { 
      monUploadDone.onComplete(); 
     } 

     Toast.makeText(flickrjAndroidSampleActivity.getApplicationContext(), 
       response, Toast.LENGTH_SHORT).show(); 

    } 

    onUploadDone monUploadDone; 

    public void setOnUploadDone(onUploadDone monUploadDone) { 
     this.monUploadDone = monUploadDone; 
    } 

    public interface onUploadDone { 
     void onComplete(); 
    } 

} 

bunu nasıl resimlerin URL'sini alabilirim?

cevap

1

API ve çalışma örneklerinin nasıl kullanılacağı hakkında ayrıntılar için developer guide'u okuyun.

Ayrıca benzer sorguyla this existing post var.

Diğer postaya göre flickrj library kullanmayı deneyin.

+0

Yine de, bu görüntünün URL'sini Flickr'da alabilir miyiz? Bu görevin kod satırlarını göremiyorum :( –