diff --git a/app/build.gradle b/app/build.gradle
index 88fd7e76d..13d01bca7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -75,7 +75,7 @@ android {
defaultConfig {
// We have to list all translated languages here, because some of our libs have bogus languages that google play
// doesn't like and we need to strip them (gr)
- resConfigs "bg", "cs", "de", "el", "en", "es", "fi", "fr", "fr-rHT", "ga", "hr", "hu", "is", "it", "iw", "ja", "ko", "lt", "nl", "nb", "pl", "pt", "pt-rBR", "ro", "ru", "sk", "sl", "sq", "sv", "tr", "zh", "uk"
+ resConfigs "bg", "cs", "de", "el", "en", "es", "fi", "fr", "fr-rHT", "ga", "hr", "hu", "is", "it", "iw", "ja", "ko", "lt", "nl", "nb", "pl", "pt", "pt-rBR", "ro", "ru", "sk", "sl", "sq", "sv", "tr", "zh-rCN", "zh-rTW", "uk"
ndk {
// abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
diff --git a/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt b/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt
index 36e0fdd45..8481488ee 100644
--- a/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt
+++ b/app/src/main/java/com/geeksville/mesh/util/LanguageUtils.kt
@@ -57,6 +57,8 @@ object LanguageUtils : Logging {
SYSTEM_DEFAULT -> context.getString(R.string.preferences_system_default)
"fr-HT" -> context.getString(R.string.fr_HT)
"pt-BR" -> context.getString(R.string.pt_BR)
+ "zh-CN" -> context.getString(R.string.zh_CN)
+ "zh-TW" -> context.getString(R.string.zh_TW)
else -> loc.getDisplayLanguage(loc)
.replaceFirstChar { if (it.isLowerCase()) it.titlecase(loc) else it.toString() }
}
diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
similarity index 100%
rename from app/src/main/res/values-zh/strings.xml
rename to app/src/main/res/values-zh-rCN/strings.xml
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
new file mode 100644
index 000000000..f7acfac25
--- /dev/null
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -0,0 +1,172 @@
+
+
+ 頻道名稱
+ 頻道選項
+ QRCODE
+ 取消設定
+ 連線狀態
+ 應用程式圖示
+ 未知的使用者名称
+ 传送
+ 傳送訊息
+ 您尚未將手機與 Meshtastic 相容的裝置配對。請先配對裝置並設置您的使用者名稱。\n\n此開源應用程式仍在開發中,如有問題,請在我們的論壇 meshtastic.discourse.group 上面發文詢問。\n\n 也可參閱我們的網頁 - www.meshtastic.org。
+ 你
+ 你的名稱
+ 匿名使用統計資訊和故障報告
+ 正在尋找 Meshtastic 裝置...
+ 開始配對
+ 加入 Meshtastic 網狀網路的 URL
+ 接受
+ 取消
+ 切換頻道
+ 您確定要更改頻道嗎?在您分享新的頻道設定之前,與其他節點的所有通訊都將停止。
+ 收到新的頻道 URL
+ 您要切換到 \'%s\' 頻道嗎?
+ Meshtastic 需要位置權限並啟用位置信息才能通過藍牙查找新設備。找到之後可以再關閉這權限。
+ 無法更改頻道,因為無線電處於休眠狀態
+ 回報BUG
+ 回報問題
+ 您確定要報告錯誤嗎?報告後,請在 meshtastic.discourse.group 上貼文,以便我們可以將報告與您發現的問題匹配。
+ 報告
+ 您還沒有配對.
+ 換設備
+ 配對完成,開始服務
+ 配對失敗,請重新選擇
+ 位置訪問已關閉,無法向設備提供位置.
+ 分享
+ 已中斷連線
+ 設備休眠中
+ 已連接:%1$s 的 %2$s 在線
+ 網絡中的節點列表
+ 更新韌體
+ IP地址:
+ 連接到設備
+ 已連接至設備 (%s)
+ 尚未联机
+ 已連接至無線電,但它正在休眠中
+ 更新到%s
+ 需要更新应用程序
+ 您必須在應用商店(或 Github)更新此應用程式。它太舊無法與此無線電固件通訊。請閱讀我們關於此主題的文件。
+ 无 (停用)
+ 短距離(速度快)
+ 中等距離(速度快)
+ 長距離 (速度快)
+ 長距離 (中等速度)
+ 遠距離(速度慢)
+ 無法識別
+ 服务通知
+ 您必须在设置中开启高精度定位服务
+ 關於
+ 節點列表
+ 文字訊息
+ 此頻道 URL 無效,無法使用
+ 除錯面板
+ 最後 500 則訊息
+ 清除
+ 更新韌體中,請等待最多八分鐘…
+ 更新成功
+ 更新失敗
+ 消息接收时间
+ 訊息接收狀態
+ 訊息傳遞狀態
+ 訊息通知
+ 通訊協定壓力測試
+ 需要韧体更新
+ 無法與此應用程式通訊,無線電韌體太舊。請前往設定面板並選擇「更新韌體」。有關詳細信息,請參閱我們的韌體安裝指南。
+ 好的
+ 您必須設定一個區域!
+ 地區
+ 無法更改頻道,因為裝置尚未連接。請再試一次。
+ 匯出 範圍測試.csv
+ 重置
+ 掃描
+ 您確定要切換到預設頻道嗎?
+ 恢復預設設置
+ 套用
+ 找不到可用于发送 URL 的应用程序。
+ 主題
+ 浅色
+ 深色
+ 系統預設
+ 選擇主題
+ 背景定位
+ 使用此功能,您必須授予「一直允許」的位置權限選項。\n這允許 Meshtastic 讀取您的智慧手機位置,並在應用程式關閉或未使用時,將位置發送給網狀網絡中的其他成員。
+ 所需權限:
+ 提供網格的位置
+ 相機權限
+ 我們必須獲得訪問攝像頭的權限才能讀取 QR 碼。不會保存任何圖片或影片。
+ 通知欄權限
+ Meshtastic 需要取得服務和訊息通知的權限。
+ 通知權限已被拒絕。要啟用通知,請前往:Android 設置 > 應用程式 > Meshtastic > 通知。
+ 短距離(速度慢)
+ 中等距離(速度慢)
+
+ - 刪除 %s 訊息?
+
+ 刪除
+ 也從所有人的聊天紀錄中刪除
+ 從我的聊天紀錄中刪除
+ 選擇全部
+ 長距離(速度慢)
+ 樣式選擇
+ 下載區域
+ 名稱
+ 描述說明
+ 鎖定
+ 儲存
+ 語言
+ 系統預設
+ 重新傳送
+ 關機
+ 重新開機
+ 路由追蹤
+ 顯示介紹指南
+ 歡迎來到 Meshtastic
+ Meshtastic 是一個開源、離網、加密的通訊平台。Meshtastic 無線電組成網狀網絡,使用 LoRa 協議傳送文字訊息進行通訊。
+ …讓我們開始吧!
+ 使用藍牙、序列埠或 WiFi 連接您的 Meshtastic 設備。 \n\n您可以在 www.meshtastic.org/docs/hardware 查看兼容的設備
+ "設置加密"
+ 作為標準,設置了默認加密密鑰。 要啟用您自己的頻道和增強加密,請轉到頻道選項卡並更改頻道名稱,這將為 AES256 加密設置一個隨機密鑰。 \n\n要與其他設備通信,他們需要掃描您的二維碼或點擊共享鏈接來配置頻道設置。
+ 訊息:
+ 快速聊天選項
+ 新的快速聊天
+ 編輯快速聊天
+ 附加到訊息
+ 实时发送
+ 恢复出厂设置
+ 这将清除你已经完成的所有设备设定。
+ 藍牙已禁用
+ Meshtastic 需要附近設備許可才能通過藍牙查找和連接設備。 您可以在不使用時將其關閉。
+ 直接發訊息
+ 節點數據庫重置
+ 這將從該列表中清除所有節點。
+ 忽略
+ 將 \'%s\' 加入忽略清單嗎?
+ 從忽略清單中移除 \'%s\' 嗎?
+ 選擇下載地區
+ 瓷磚下載估計:
+ 開始下載
+ 要求位置
+ 关闭
+ 設備設定
+ 模組設定
+ 新增
+ 正在計算……
+ 離線管理
+ 當前緩存大小
+ 緩存容量: %1$.2f MB\n緩存使用: %2$.2f MB
+ 清除下載的圖磚
+ 圖磚來源
+ 清除 %s 的 SQL 快取
+ 清除 SQL 快取失败,请查看 logcat 纪录
+ 緩存管理員
+ 下載已完成!
+ 下載完成,但有 %d 個錯誤
+ %d 圖磚
+ 方位:%1$d° 距離:%2$s
+ 編輯航點
+ 刪除航點?
+ 新建航點
+ 收到編輯航點:%s
+ 達到循環工作週期限制。目前無法發送訊息,請稍後再試。
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e16889f9d..da03bc29e 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -2,6 +2,8 @@
// Language tags native names (not available via .getDisplayLanguage)
Kreyòl ayisyen
Português do Brasil
+ 简体中文
+ 繁體中文
Meshtastic
2.13 km
diff --git a/app/src/main/res/xml/locales_config.xml b/app/src/main/res/xml/locales_config.xml
index d9d8c4226..d0a85a7cd 100644
--- a/app/src/main/res/xml/locales_config.xml
+++ b/app/src/main/res/xml/locales_config.xml
@@ -3,7 +3,8 @@
-
+
+