kullanarak base64 kodlu görüntü sunucuya gönderiliyor HttpUrlConnection kullanarak base64 kodlu görüntüleri bir sunucuya göndermeye çalışıyorum. Sorun şu ki çoğu görüntünün başarıyla gönderildiğini, ancak bazılarının bir FileNotFound istisnası oluşturduğunu. Resmi kodlama kodum aşağıda bulunabilir.HttpUrlConnection Android
String imageEncoded = Base64.encodeToString(b,Base64.URL_SAFE);
için: Çizgiyi değiştirdiğinizde
public static String encodeImage(Bitmap thumbnail) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
thumbnail.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] b = baos.toByteArray();
String imageEncoded = Base64.encodeToString(b,Base64.URL_SAFE);
return imageEncoded;
}
String imageEncoded = Base64.encodeToString(b,Base64.DEFAULT);
sonra en görüntüleri FileNotFoundException üretmek ve bazı başarılı sunucuya gönderilir. Herhangi bir yardım takdir edilecektir
public class HttpManager {
public static String getData(RequestPackage p) {
BufferedReader reader = null;
String uri = p.getUri();
if (p.getMethod().equals("GET")) {
uri += "?" + p.getEncodedParams();
}
try {
URL url = new URL(uri);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod(p.getMethod());
if (p.getMethod().equals("POST")) {
con.setDoOutput(true);
OutputStreamWriter writer = new OutputStreamWriter(con.getOutputStream());
writer.write(p.getEncodedParams()); //Url encoded parameters
writer.flush();
}
StringBuilder sb = new StringBuilder();
reader = new BufferedReader(new InputStreamReader(con.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
return sb.toString();
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
}
}
}
:
aşağıda benim HttpUrlConnection kodudur. Teşekkürler
Neden Base64? – pskink
Görüntü bitmap değeri daha büyükse bitamp azaltmaya çalışın. –
aslında, sorun sunucu tarafında yatıyor ... prolly, sunucu blokları çok büyük istekler ... hala neden yerine düz ikili göndermiyorsunuz anlamıyorum ... – Selvin