1
(URL)+ LOC = &メッセージ= & datetimefinal = & IDNO =
(URLにデータを保存するために戻ってそれを呼び出します)+ LOC = 1つの&メッセージ=メッセージはdatetimefinal = finaldatetime & IDNO = 1
MSG(メッセージ)の値は、グローバル変数であり、iはFを取得& Date()を使用してinaldatetimeを返します。
この
はDateFormat dateFormat = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss");
Date date = new Date();
String datefinal = dateFormat.format(date).toString();
final String BASEPATH = "URL";
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASEPATH)
.addConverterFactory(GsonConverterFactory.create())
.build();
DeviceData deviceData = retrofit.create(DeviceData.class);
Map<String, String> params = new HashMap<>();
params.put("location", "1");
params.put("datetime", datefinal);
params.put("msg", message);
params.put("id", "1");
deviceData.getMyThing(params, new Callback<String>() {
@Override
public void onResponse(Call<String> call, Response<String> response) {
Toast toast = Toast.makeText(context,"test",Toast.LENGTH_SHORT);
toast.show();
}
@Override
public void onFailure(Call<String> call, Throwable t) {
Toast toast = Toast.makeText(context,"test2",Toast.LENGTH_SHORT);
toast.show();
}
}
// ... do some stuff here.
);
}
での作業イムコードであり、これはiI'mが持つエラーが戻り値の型やコールバックなどのいずれかを持っている必要があります」と述べ、今の私のインターフェイス
public interface DeviceData {
@GET("/mobile_alerts_api.php?")
void getMyThing(Map<String, String>map,Callback<String> callback);
です最後の議論。 "私はretrofit2を使っています。あなたの論理が正しければ
@GET("/mobile_alerts_api.php?")
Call<String> getMyThing(@FieldMap Map<String, String> map,Callback<String> callback);
にそれは、動作します。この
@GET("/mobile_alerts_api.php?")
void getMyThing(Map<String, String>map,Callback<String> callback);
変更:感謝
これは発生するエラーです 発生原因:java.lang.IllegalArgumentException:No Retrofit注釈が見つかりました。 (パラメータ#1) メソッドDeviceData.getMyThingの場合 – MNGorospe
@MNGorospe答えが更新され、注釈が追加されました。 –