使用改造请求和响应来执行特定功能

时间:2017-08-31 23:35:09

标签: java android retrofit2 android-audiomanager

我正在尝试向服务器发送请求,当我从服务器收到响应时,我想将手机从静音模式更改为正常模式。我正在使用改造而且我是新手。

以下是我如何提出请求和流程响应:

 Call<ServerResponse3> response3 = requestInterface.chec(ProfileFragment.Global.email);
 response3.enqueue(new Callback<ServerResponse3>() {
    @Override
    public void onResponse(Call<ServerResponse3> call, retrofit2.Response<ServerResponse3> response3) {
        ServerResponse3 resp = response3.body();

        Toast.makeText(BService.this, resp.getResult(), LENGTH_LONG).show();
        Toast.makeText(BService.this, ProfileFragment.Global.ID, LENGTH_LONG).show();

        final AudioManager mode = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
        if (resp.getResult().contains("true")) {
            //Normal Mode Programatically
            mode.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
        } else {
            //Silent Mode Programatically
            mode.setRingerMode(AudioManager.RINGER_MODE_SILENT);
        }
} 

这是界面部分:

@GET("project5/web/normal")
Call<ServerResponse3> chec (@Query("email") String email);

我这样做是对还是有问题?

1 个答案:

答案 0 :(得分:0)

将活动名称用于上下文,如下所示:

final AudioManager mode = (AudioManager) YourActivityName.this.getSystemService(Context.AUDIO_SERVICE);