2016-04-22 6 views
0

Ich habe mir ein Tutorial angesehen, um ein Bild auf einen Server hochzuladen, und ich möchte den Code ändern, damit ich ein PDF hochladen kann.Wie unterscheidet sich der zum Hochladen eines Bilds geschriebene Code vom Hochladen eines PDFs auf Android?

Ich bin ein wenig verwirrt, wenn die Bitmap-Informationen ändern würde oder nicht?

Dies ist der Code, ich bin auf der Suche an:

public String getStringImage(Bitmap bmp){ 
    ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
    bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos); 
    byte[] imageBytes = baos.toByteArray(); 
    String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT); 
    return encodedImage; 
} 

private void uploadImage(){ 
    class UploadImage extends AsyncTask<Bitmap,Void,String>{ 

     ProgressDialog loading; 
     UploadRH rh = new UploadRH(); 

     @Override 
     protected void onPreExecute() { 
      super.onPreExecute(); 
      loading = ProgressDialog.show(UploadActivity.this, "Uploading...", null,true,true); 
     } 

     @Override 
     protected void onPostExecute(String s) { 
      super.onPostExecute(s); 
      loading.dismiss(); 
      Toast.makeText(getApplicationContext(),s,Toast.LENGTH_LONG).show(); 
     } 

     @Override 
     protected String doInBackground(Bitmap... params) { 
      Bitmap bitmap = params[0]; 
      String uploadImage = getStringImage(bitmap); 

      HashMap<String,String> data = new HashMap<>(); 

      data.put(UPLOAD_KEY, uploadImage); 
      String result = rh.sendPostRequest(UPLOAD_URL,data); 

      return result; 
     } 
    } 

    UploadImage ui = new UploadImage(); 
    ui.execute(bitmap); 
} 

Was brauche ich, um den Code zu ändern?

Antwort

0

Base64 wird häufig Bilder verwendet zu schicken, ich etwas mehr in der Nähe dies tun würde: Upload pdf file from android to php

Andernfalls, wenn Sie noch base64 wollen vielleicht verwenden, um dies etwas ist, um zu überprüfen: Convert a file (<100Mo) in Base64 on Android

OKHttp http://square.github.io/okhttp/ ist eine Bibliothek, die das Heavylifting durchführt. Check out Retrofit auch: http://square.github.io/retrofit/, die OKHttp verwendet

+0

Keiner dieser Links wirklich geholfen, so viel –

Verwandte Themen