图灵机器人SDK接入指南

时间:2020-11-27 22:18:33

图灵机器人SDK接入指南

图灵机器人:官网

注册账号

注册个账号,创建个应用,进入后台,点开机器人接入,你会看到API keysecret

图灵机器人SDK接入指南

下载SDK

点击下载Android SDK,解压以后会有libs

图灵机器人SDK接入指南

copy到自己的工程

加入权限

如果用API接入,应该只用网络权限就行了把,官方要求下面这几个权限,时间紧迫,我也没有一一去验证,直接加上把。

<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

添加jar

将下载的SDK里的libs目录下的jar和so都导入工程

想不明白,为什么Demo还在使用Eclipse,是Demo没有更新,还是工程师……

图灵SDK初始化

// turingSDK初始化
SDKInitBuilder builder = new SDKInitBuilder(this).setSecret(`这里填写secret`).setTuringKey(`这里填写API Key`).setUniqueId(`这里填写自己添加的一个标示符,如邮箱、 手机号等等`);
SDKInit.init(builder, new InitListener() {
@Override
public void onFail(String error) {
Log.d(TAG, error);
}

@Override
public void onComplete() {
// 获取userid成功后,才可以请求Turing服务器,需要请求必须在此回调成功,才可正确请求
mTuringApiManager = new TuringApiManager(MainActivity.this);
mTuringApiManager.setHttpListener(myHttpConnectionListener);
}
});

图灵网络请求回调

/**
* 网络请求回调
*/

HttpConnectionListener myHttpConnectionListener = new HttpConnectionListener() {

@Override
public void onSuccess(RequestResult result) {
if (result != null) {
try {
Log.d(TAG, result.getContent().toString());
mTv2.setText(result.getContent().toString());
JSONObject result_obj = new JSONObject(result.getContent().toString());
if (result_obj.has("text")) {
Log.d(TAG, result_obj.get("text").toString());
// 科大讯飞语音合成
mBitMainSpeechCompound.speaking(result_obj.get("text").toString());
}
} catch (JSONException e) {
Log.d(TAG, "JSONException:" + e.getMessage());
}
}
}

@Override
public void onError(ErrorMessage errorMessage) {
Log.d(TAG, errorMessage.getMessage());
}
};

图灵解析

mTuringApiManager.requestTuringAPI(data);

Demo

Demo只是简单的使用了下图灵SDK,没有使用任何设计模式,可以作为参考

GitHub:TuringSDK