安卓(Android)聊天机器人实现代码分享
程序员文章站
2023-11-30 22:29:22
今天看到一个ios写的图灵机器人,直接去官网()看了下api接入,太简单了,就一个get请求~于是乎,写了一个android版本的机器人,没什么技术含量,但是挺好玩的~刚好...
今天看到一个ios写的图灵机器人,直接去官网()看了下api接入,太简单了,就一个get请求~于是乎,写了一个android版本的机器人,没什么技术含量,但是挺好玩的~刚好昨晚看了自己喜欢的秦时明月,嘿嘿,小貔貅,就是我的机器人宠物啦~
这是一个安卓智能聊天机器人的源码,采用了仿微信的风格设计,调用的是图灵机器人的api,能够实现智能聊天、讲故事、讲笑话、查天气、查公交等丰富的功能。
先给大家展示效果图:
下面是代码片段,想要源码的小伙伴可在下面留言留下你的邮箱地址
package com.example.android_robot_; import java.util.arraylist; import java.util.date; import java.util.list; import android.app.activity; import android.content.context; import android.os.bundle; import android.os.handler; import android.os.message; import android.text.textutils; import android.view.view; import android.view.window; import android.view.inputmethod.inputmethodmanager; import android.widget.edittext; import android.widget.listview; import android.widget.toast; import com.example.android_robot_.bean.chatmessage; import com.example.android_robot_.bean.chatmessage.type; import com.zhy.utils.httputils; public class mainactivity extends activity { /** * 展示消息的listview */ private listview mchatview; /** * 文本域 */ private edittext mmsg; /** * 存储聊天消息 */ private list mdatas = new arraylist(); /** * 适配器 */ private chatmessageadapter madapter; private handler mhandler = new handler() { public void handlemessage(android.os.message msg) { chatmessage from = (chatmessage) msg.obj; mdatas.add(from); madapter.notifydatasetchanged(); mchatview.setselection(mdatas.size() - ); }; }; <a href="http://home.cto.com/index.php?s=/space/" target="_blank">@override</a> protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); requestwindowfeature(window.feature_no_title); setcontentview(r.layout.main_chatting); initview(); madapter = new chatmessageadapter(this, mdatas); mchatview.setadapter(madapter); } private void initview() { mchatview = (listview) findviewbyid(r.id.id_chat_listview); mmsg = (edittext) findviewbyid(r.id.id_chat_msg); mdatas.add(new chatmessage(type.input, "我是小貅貅,很高兴为您服务")); } public void sendmessage(view view) { final string msg = mmsg.gettext().tostring(); if (textutils.isempty(msg)) { toast.maketext(this, "您还没有填写信息呢...", toast.length_short).show(); return; } chatmessage to = new chatmessage(type.output, msg); to.setdate(new date()); mdatas.add(to); madapter.notifydatasetchanged(); mchatview.setselection(mdatas.size() - ); mmsg.settext(""); // 关闭软键盘 inputmethodmanager imm = (inputmethodmanager) getsystemservice(context.input_method_service); // 得到inputmethodmanager的实例 if (imm.isactive()) { // 如果开启 imm.togglesoftinput(inputmethodmanager.show_implicit, inputmethodmanager.hide_not_always); // 关闭软键盘,开启方法相同,这个方法是切换开启与关闭状态的 } new thread() { public void run() { chatmessage from = null; try { from = httputils.sendmsg(msg); } catch (exception e) { from = new chatmessage(type.input, "服务器挂了呢..."); } message message = message.obtain(); message.obj = from; mhandler.sendmessage(message); }; }.start(); } }
以上代码就是实现安卓聊天机器人的全部代码,喜欢的朋友直接拿去用,在使用过程中发现有问题请随时和我联系。