Google自動翻譯填充腳本

背景:

android資源目錄下,多語言需要通過Google自動翻譯填入。eg:values-es, values-fr等,希望通過Google翻譯,將翻譯結(jié)果自動填充到對應(yīng)文件夾的strings.xml文件中。

功能:

? ? ? ? ?1.多語言的翻譯與自動填入。

? ? ? ? ?2.刪除多語言的填充(當(dāng)翻譯結(jié)果有明顯錯誤時,可以用此功能來回退自動填入)

用法:

? ? ? ? 1.多語言的翻譯與自動填入(默認(rèn)的values文件夾不填充)java -jar “jar包存放路徑“? 參數(shù)一? 參數(shù)二? 參數(shù)三?

? ? ? ? 參數(shù)一:需要填充的資源文件夾的路徑到 res一級

? ? ? ? 參數(shù)二:需要填充字符串的名字 eg: >? test

? ? ? ? 參數(shù)三:需要翻譯的內(nèi)容 eg:? “How old are you”

? ? ? ? 翻譯如下字符串<string name="test">"How old are you"</string>

? ? ? ?結(jié)果:腳本執(zhí)行完成后,字串內(nèi)容會自動翻譯完成,并且填充到所有的對應(yīng)的語言文件夾下面的. ? ?strings.xml中,不會重復(fù)插入,如果已經(jīng)存在名為test的字符串,將不再執(zhí)行插入操作。

? ? ?2.刪除多語言的填充java -jar “jar包存放路徑“? 參數(shù)一? 參數(shù)二? 參數(shù)三?

? ? 參數(shù)一:delete? 固定為delete字符串

? ? 參數(shù)二:需要填充的資源文件夾的路徑到 res一級

? ? 參數(shù)三:需要填充字符串的名字 eg:? test結(jié)果:在所有語言文件夾中,刪除制定名字的字符串。

實現(xiàn)知識涉及知識點(diǎn):

1.獲取Google免費(fèi)翻譯API

由于google商業(yè)云翻譯是需要收費(fèi)的,所以這里使用了網(wǎng)頁版翻譯接口,該接口能獲取到翻譯后的josn字符串。獲取鏈接如下:

翻譯鏈接 可以通過拼接鏈接來翻譯成不同國家的語言。此處鏈接為https鏈接,在獲取的過程中,需要證書驗證。在代碼中添加new X509TrustManager()相關(guān)代碼即可。

2.拿到翻譯后的自動填充

拿到翻譯解析后,保存在HashMap中,統(tǒng)一寫入到Android的語言文件夾中。此處涉及到需要翻譯哪些語言的問題,具體要翻譯哪些語言,是通過獲取參數(shù)的目錄中,目錄名字為"values-fr"類似的文件夾名字來確定的。例如目錄中存在values-fr文件夾,我們認(rèn)為"fr"即為需要翻譯的語言。以此類推,通過文件夾名字可以確定有哪些語言是需要去請求翻譯的。寫入的過程采用了Dom4j方式。

3.腳本化翻譯過程

導(dǎo)出jar包,需要fat jar支持,需要在線安裝相關(guān)插件。

解決問題過程:

1.分析決絕問題的主要阻礙,即如何免費(fèi)獲取Google翻譯。其中Google官方提供的云翻譯為收費(fèi)翻譯,不予考慮。Stack Overflow查找到可以自動翻譯的鏈接后,問題變?yōu)槿绾潍@取https提供的josn字符串。問題得以順利解決。

源代碼和jar包鏈接:

https://github.com/qijunf/AutoTranslationForAndroid




最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,534評論 19 139
  • 《ijs》速成開發(fā)手冊3.0 官方用戶交流:iApp開發(fā)交流(1) 239547050iApp開發(fā)交流(2) 10...
    葉染柒丶閱讀 5,635評論 0 7
  • 《ilua》速成開發(fā)手冊3.0 官方用戶交流:iApp開發(fā)交流(1) 239547050iApp開發(fā)交流(2) 1...
    葉染柒丶閱讀 11,479評論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,638評論 18 399
  • 比較兩個字符串A和B,確定A中是否包含B中所有的字符。字符串A和B中的字符都是 大寫字母注意事項在 A 中出現(xiàn)的 ...
    DayDayUpppppp閱讀 268評論 0 0

友情鏈接更多精彩內(nèi)容