public class PhotoNetworkClient {
public static final String KEY_API="my_key";
private static final String BASE_URL = "https://api.imgbb.com/1/";
private static Retrofit retrofit;
public static Retrofit getRetrofitClient(Context context) {
if (retrofit == null) {
OkHttpClient okHttpClient = new OkHttpClient.Builder()
.build();
retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create())
.build();
}
return retrofit;
}
}
public interface PhotoService {
@Multipart()
@POST("/upload")
Call<ResponseBody> uploadImage(@Query("key") String key, @Part() MultipartBody.Part file );
}
public static void testExecute(Bitmap bitmap, Context context) throws IOException {
//Convert bitmap to byte array
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 0 /*ignored for PNG*/, bos);
byte[] bitmapData = bos.toByteArray();
//create file
String currentDate = new SimpleDateFormat("ddMMyyyy_HHmmss", Locale.getDefault()).format(new Date());
File f = new File(context.getCacheDir(), "temp_"+currentDate );
f.createNewFile();
FileOutputStream fos = new FileOutputStream(f);
fos.write(bitmapData);
fos.flush();
fos.close();
Retrofit retrofit = PhotoNetworkClient.getRetrofitClient(context);
PhotoService uploadAPIs = retrofit.create(PhotoService.class);
RequestBody requestFile = RequestBody.create(MediaType.parse("multipart/form-data"), f);
MultipartBody.Part body = MultipartBody.Part.createFormData("image", f.getName(), requestFile);
Call call = uploadAPIs.uploadImage(PhotoNetworkClient.KEY_API,body);
call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
if (response.isSuccessful())
Toast.makeText(context, "I send photo", Toast.LENGTH_SHORT);
else
Toast.makeText(context, "response isn't successful", Toast.LENGTH_SHORT);
}
@Override
public void onFailure(Call call, Throwable t) {
Toast.makeText(context, "on failure", Toast.LENGTH_SHORT);
}
});
}
});
我收到代码为200的响应,但图像没有上传到服务器
但是我实际上也在搜索一些使用ImgBB API的例子。
最后我设法上传了图像--我使用的代码和你的代码非常相似,只是有一点小的变化:
不要在基URL中包含“1”参数,把它留在post中。这就解决了我的问题。
BASE_URL = "https://api.imgbb.com"
@POST("/1/upload")
我正在尝试从sdcard拍摄照片,它是工作的情况下,当用户选择从谷歌照片,但给出一个curserindexoutofbound错误时,从任何其他应用程序,如gallery或file Manager。这是一段代码。 OnActivity Result`{if(requestCode==PICK_IMAGE_REQUEST&&resultCode==activity.result_ok&data!=n
我使用Flickrj-Android-2.0.0,并遵循OAuth流程。我也得到了访问令牌和秘密,但当我试图在flickr上传照片时,我得到了这个错误: 谢谢...
我正试图从我的android设备上传文件到php服务器,但服务器没有收到任何文件。这是我的示例代码,我在网上找到的。php服务器,我正在通过chunk上传文件 我的Android代码 PHP Server文件上传中的代码,我是通过块完成文件上传的,请谁帮我发送正确的代码文件通过块上传和相关的android文件上传代码
问题内容: 我正在尝试将文件从我的Android设备上传到php服务器,但服务器未收到任何文件。这是我的示例代码,我在线找到了。php服务器,我正在通过块上传文件 我的Android代码 PHP Server代码在文件上传中,我已经完成了通过块进行文件上传,请有人帮助我通过块和相关的android文件上传代码发送正确的代码文件 问题答案: 我不知道您的代码,但是为您提供了两个有效的代码:这适用于所
可以通过蓝牙传输音频吗?在我的研究中,我发现只有使用A2DP(高级音频分布配置文件)才有可能。每个Android设备都支持A2DP吗?如果没有,是否可以使用蓝牙在两个Android设备之间传输音频?请帮我理解这一点。 我浏览了以下链接: 在Android中通过蓝牙接收音频, 谷歌确认蓝牙音频流修复下一个版本的Android 4.2 如何通过蓝牙从另一台设备流式传输音频?
我尝试了DPZFlickr,它在尝试上传时返回以下内容: 检查Flickr API的响应,它与尝试Dantsu版本的phpFlickr时返回的结果相同,返回如下: 我卷了自己的卷曲,返回如下: