最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

安卓(Android)聊天機器人實現(xiàn)代碼分享

 更新時間:2015年11月04日 10:45:22   投稿:mrr  
這是一個安卓智能聊天機器人的源碼,采用了仿微信的風(fēng)格設(shè)計,調(diào)用的是圖靈機器人的API,能夠?qū)崿F(xiàn)智能聊天、講故事、講笑話、查天氣、查公交等豐富的功能

今天看到一個ios寫的圖靈機器人,直接去官網(wǎng)(http://www.tuling123.com/openapi/)看了下API接入,太簡單了,就一個get請求~于是乎,寫了一個Android版本的機器人,沒什么技術(shù)含量,但是挺好玩的~剛好昨晚看了自己喜歡的秦時明月,嘿嘿,小貔貅,就是我的機器人寵物啦~

這是一個安卓智能聊天機器人的源碼,采用了仿微信的風(fēng)格設(shè)計,調(diào)用的是圖靈機器人的API,能夠?qū)崿F(xiàn)智能聊天、講故事、講笑話、查天氣、查公交等豐富的功能。

先給大家展示效果圖:

下面是代碼片段,想要源碼的小伙伴可在下面留言留下你的郵箱地址

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  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, "我是小貅貅,很高興為您服務(wù)"));
    }
    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("");
        // 關(guān)閉軟鍵盤
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        // 得到InputMethodManager的實例
        if (imm.isActive())
        {
            // 如果開啟
            imm.toggleSoftInput(InputMethodManager.SHOW_IMPLICIT,
                    InputMethodManager.HIDE_NOT_ALWAYS);
            // 關(guān)閉軟鍵盤,開啟方法相同,這個方法是切換開啟與關(guān)閉狀態(tài)的
        }
        new Thread()
        {
            public void run()
            {
                ChatMessage from = null;
                try
                {
                    from = HttpUtils.sendMsg(msg);
                } catch (Exception e)
                {
                    from = new ChatMessage(Type.INPUT, "服務(wù)器掛了呢...");
                }
                Message message = Message.obtain();
                message.obj = from;
                mHandler.sendMessage(message);
            };
        }.start();
    }
}

以上代碼就是實現(xiàn)安卓聊天機器人的全部代碼,喜歡的朋友直接拿去用,在使用過程中發(fā)現(xiàn)有問題請隨時和我聯(lián)系。

您可能感興趣的文章:

相關(guān)文章

  • 獲取Android設(shè)備電池電量狀態(tài)

    獲取Android設(shè)備電池電量狀態(tài)

    本文介紹了在Android系統(tǒng)中獲取設(shè)備電池電量狀態(tài)的方法,包括使用BatteryManager類獲取電量百分比、電池狀態(tài)和健康狀況,以及通過注冊廣播接收器實時獲取電量狀態(tài)變化。了解這些方法可以幫助用戶更好地管理設(shè)備的使用,避免因電量不足而影響使用體驗。
    2023-03-03
  • Android檢測Activity或者Service是否運行的方法

    Android檢測Activity或者Service是否運行的方法

    下面小編就為大家分享一篇Android檢測Activity或者Service是否運行的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • 新版Flutter集成到已有Android項目的實現(xiàn)

    新版Flutter集成到已有Android項目的實現(xiàn)

    這篇文章主要介紹了新版Flutter集成到已有Android項目的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Android編程實現(xiàn)獲取新浪天氣預(yù)報數(shù)據(jù)的方法

    Android編程實現(xiàn)獲取新浪天氣預(yù)報數(shù)據(jù)的方法

    這篇文章主要介紹了Android編程實現(xiàn)獲取新浪天氣預(yù)報數(shù)據(jù)的方法,涉及Android基于新浪接口的調(diào)用及數(shù)據(jù)處理技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • 淺析Android App的相對布局RelativeLayout

    淺析Android App的相對布局RelativeLayout

    這篇文章主要介紹了Android App的相對布局RelativeLayout,文中舉了一個登錄界面的XML布局例子,非常直觀,需要的朋友可以參考下
    2016-04-04
  • Android輸入法彈出時覆蓋輸入框問題的解決方法

    Android輸入法彈出時覆蓋輸入框問題的解決方法

    這篇文章主要介紹了Android輸入法彈出時覆蓋輸入框問題的解決方法的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • Kotlin中的高階函數(shù)深入講解

    Kotlin中的高階函數(shù)深入講解

    這篇文章主要給大家介紹了關(guān)于Kotlin中高階函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • Adnroid打造通用的帶進度條的WebView

    Adnroid打造通用的帶進度條的WebView

    這篇文章主要為大家詳細介紹了Adnroid打造通用的帶進度條的WebView的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Android開發(fā)之Sqliteopenhelper用法實例分析

    Android開發(fā)之Sqliteopenhelper用法實例分析

    這篇文章主要介紹了Android開發(fā)之Sqliteopenhelper用法,實例分析了SQLiteOpenHelper類操作數(shù)據(jù)庫的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • Android Color顏色過度計算實現(xiàn)代碼

    Android Color顏色過度計算實現(xiàn)代碼

    這篇文章主要介紹了Android Color顏色過度計算實現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評論

永新县| 盐津县| 都江堰市| 沈丘县| 晋中市| 治多县| 乳山市| 凤山市| 青冈县| 凭祥市| 红桥区| 和田县| 大田县| 封开县| 慈利县| 理塘县| 武夷山市| 津市市| 凌源市| 新巴尔虎左旗| 福州市| 奉贤区| 九台市| 衡水市| 邢台市| 禹城市| 南靖县| 河北省| 合作市| 海安县| 穆棱市| 介休市| 湛江市| 诸暨市| 威海市| 北碚区| 旬邑县| 双峰县| 时尚| 百色市| 柞水县|