为什么我的机器人没有响应
在设备上运行应用程序时未收到机器人的回复。我在 Android Studio 中使用 Brain Shop API Android Studio。它没有显示任何错误,但是当我运行应用程序时,我发送了一条消息,但没有得到机器人的回复。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_chatbot);
chatsRV = findViewById(R.id.idRVChats);
userMsgEdt = findViewById(R.id.idEdtMessage);
sendMsgFAB = findViewById(R.id.idFABSend);
chatsModalArrayList = new ArrayList<>();
chatRVAdapter = new ChatRVAdapter(chatsModalArrayList,this);
LinearLayoutManager manager = new LinearLayoutManager(this);
chatsRV.setLayoutManager(manager);
chatsRV.setAdapter(chatRVAdapter);
sendMsgFAB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (userMsgEdt.getText().toString().isEmpty()){
Toast.makeText(chatbot.this, "please enter your message",Toast.LENGTH_SHORT).show();
return;
}
getResponse(userMsgEdt.getText().toString());
if(userMsgEdt.length()>0) {
userMsgEdt.setText(null);
}
}
});
}
private void getResponse(String message){
chatsModalArrayList.add(new ChatsModal( message,USER_KEY));
chatRVAdapter.notifyDataSetChanged();
String url = "http://api.brainshop.ai/get?bid=166135&key=HutlT9ZgXWrPpz3o&uid=[uid]&msg="+message;
String BASE_URL = "http://api.brainshop.ai/";
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
RetrofitAPI retrofitAPI = retrofit.create(RetrofitAPI.class);
Call<MsgModal> call = retrofitAPI.getMessage(url);
call.equals(new Callback<MsgModal>() {
@Override
public void onResponse(Call<MsgModal> call, Response<MsgModal> response) {
if(response.isSuccessful()){
MsgModal modal = response.body();
chatsModalArrayList.add(new ChatsModal(modal.getCnt(),BOT_KEY));
chatRVAdapter.notifyDataSetChanged();
}
}
@Override
public void onFailure(Call<MsgModal> call, Throwable t) {
chatsModalArrayList.add(new ChatsModal("please revert your question",BOT_KEY));
chatRVAdapter.notifyDataSetChanged();
}
});
}
我也遇到了这个问题,你只需更改网址:
String url = "http://api.brainshop.ai/get?bid=166135&key=HutlT9ZgXWrPpz3o&uid=[uid]&msg="+message
到
String url = "http://api.brainshop.ai/get?bid=166135&key=HutlT9ZgXWrPpz3o&uid=uid&msg="+message
从 uid 中删除 []
在清单文件中添加此行
<application>
android:usesCleartextTraffic="true"
</application
更改 call.equals(new Callback() 调用.enqueue(new Callback()