超簡單整合ML kit 實現聽寫單詞播報
阿新 • • 發佈:2020-06-30
# 背景
相信我們大家在剛開始學習一門語言的時候都有過聽寫,現在的小學生學語文的時候一項重要的課後作業就是聽寫課文中的生詞,很多家長們都有這方面的經歷。不過一方面這種讀單詞的動作相對簡單,另一方面家長的時間也很寶貴,現在市場上出現了很多xx課後聽寫的語音,這些播講人將語文教材上的課後聽寫單詞錄好,給家長下載使用,不過這種錄音不夠靈活,如果老師今天額外留了幾道不是課後習題中的單詞,這部分的錄音就不能滿足家長和孩子們的需要。本文就介紹了一個使用我們ML kit 的通用文字識別功能和語音合成功能共同實現自動語音播報APP,只需要對聽寫的單詞或者課文拍照,然後就能自動播報照片中的文字,播報的音色、音調都可以調整。
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20200630102600816.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70)
---
# 開發前準備
## 開啟AndroidStudio專案級build.gradle檔案
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20200630102635151.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70)
在allprojects ->repositories裡面配置HMS SDK的maven倉地址
```java
allprojects {
repositories {
google()
jcenter()
maven {url 'http://developer.huawei.com/repo/'}
}
}
```
在buildscript->repositories裡面配置HMS SDK的maven倉地址
```java
buildscript {
repositories {
google()
jcenter()
maven {url 'http://developer.huawei.com/repo/'}
}
}
```
在buildscript->repositories裡面配置HMS SDK的maven倉地址
```java
buildscript {
repositories {
google()
jcenter()
maven {url 'http://developer.huawei.com/repo/'}
}
}
```
在buildscript->dependencies中,配置AGC外掛
```java
dependencies {
classpath 'com.huawei.agconnect:agcp:1.2.1.301'
}
```
## 新增編譯依賴
開啟應用級的build.gradle檔案
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/2020063010294637.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70)
整合SDK
```java
dependencies{
implementation 'com.huawei.hms:ml-computer-voice-tts:1.0.4.300'
implementation 'com.huawei.hms:ml-computer-vision-ocr:1.0.4.300'
implementation 'com.huawei.hms:ml-computer-vision-ocr-cn-model:1.0.4.300'
}
```
應用ACG外掛,新增在檔案頭即可
```java
apply plugin: 'com.huawei.agconnect'
```
指定許可權和特性:在AndroidManifest.xml中進行宣告