0

JSONオブジェクトを返すカスタムAPIをAndroidアプリから呼び出そうとしています(そして、Retrofitがそれを望ましいデータ型、つまりこの場合はStringにマップすることを知っている限り、私が間違っている場合は修正してください違う)。問題は、API 呼び出しを実行しようとすると、サーバーがまったく何も受信しないことです。エラーを特定する方法がわかりません。これまでレトロフィットの経験はありません。

また、本文で投稿リクエストをするように言われました。私のインターフェースを定義する際にそれが何を意味するのかわかりません。それに関する提案は大歓迎です。

メイン アクティビティのコードは次のとおりです。

 RestAdapter adap = new RestAdapter.Builder().setEndpoint(Endpoint).build();
 OnLoginAPI loginAPICalls = adap.create(OnLoginAPI.class);

    loginAPICalls.userloginCredentials(userCredentails.get(0), userCredentails.get(1), new Callback<String>() {
        @Override
        public void success(String APIresponse, Response response) {
            status = APIresponse;
        }

        @Override
        public void failure(RetrofitError error) {
            status = "API Error";
        }
    });
    return status;

そして、ここに私のインターフェースがあります:

public interface OnLoginAPI {

@POST("/v1/login")
public void userloginCredentials(
        @Field("username") String username,
        @Field("password") String password,
        Callback<String> response);

}

logcat ログは次のとおりです。

09-20 12:41:27.165      721-802/? W/AlarmManager﹕ FACTORY_ON= 0
09-20 12:41:27.165      721-802/? D/LightsService﹕ [SvcLED] SvcLEDTask
09-20 12:41:27.175      721-803/? D/BatteryService﹕ turn on LED for charging
09-20 12:41:27.185      721-738/? D/SensorManager﹕ registerListener :: handle = 7  name= GP2A Light Sensor delay= 200000 Listener= com.android.server.LightsService$4@4259fcc8
09-20 12:41:27.185      721-738/? D/LightsService﹕ [SvcLED] SvcLEDReceiver::isHappyNight = false
09-20 12:41:27.385      721-802/? D/SensorManager﹕ unregisterListener::  Listener= com.android.server.LightsService$4@4259fcc8
09-20 12:41:27.385      721-802/? D/LightsService﹕ [SvcLED] onSensorChanged::light value = 652.0
09-20 12:41:27.395      721-802/? I/LightsService﹕ fileWriteInt : /sys/class/sec/led/led_lowpower  value : 0
09-20 12:41:27.395      721-802/? D/LightsService﹕ setLightLocked is called
09-20 12:41:28.897      183-183/? E/SMD﹕ DCD ON
09-20 12:41:31.900      183-183/? E/SMD﹕ DCD ON
4

1 に答える 1

0

レトロフィット インターフェースの宣言には、@FormURLEncodedレトロフィットがリクエストの本文の処理方法を認識できるように、アノテーションが必要です。

于 2015-09-20T21:09:39.983 に答える