ok
CHOOSE YOUR LANGUAGE

Zenbo的對話建立與載入 (apk 篇)

 

Step 0. 載入SDK


[0-1]:下載SDK

先至Zenbo Tool網站,點選下載SDK。

[0-2]:開啟Android Studio,打開並且載入ZenboDialogSample ,之後需要同步DDE與 src\main下manifest的資訊。

[0-3]:可載入 src\main\java的ZenboDialogSample.java 以及 src\main\res\layout的activity_zenbo_dialog_sample.xml修改您的sample邏輯與版型樣式

 

Step 1. 載入 Hello World Project


[1-1]: 請先申請加入開發者計畫後,https://zenbo.asus.com/developer/console/reg.jsp ,才可以使用 DDE 介面。

打開 DDE , 先選取 Import Template Project。接著按下 Edit進入編輯畫面。(如果已經編輯過,直接選取Edit)

[1-2]:接著勾選Hello World,按下Add。

[1-3]:點選Edit開始編輯

 

Step 2: Register a domain UUID


[2-1] 點選 [Info]

[2-2] 點選 Register 註冊domain uuid.

 

[2-3] 填入 Domain Name and Domain Description, 接著點選 “Create”:

[2-4] 可點選 All 來查看所有開發者自己的已註冊ID資訊:

[2-5] 複製 UUID, 並且貼至 AndroidManifest.xml的domain UUID

    

需要注意的是, zenbo_ds_version 的value 要跟DDE相符,在此例子中是0.0.1。(DDE的Version可以在Project Center或者 Project Info查看)

[2-6] 如果使用Dialogue Sample,要記得更改domain uuid

[2-7] 填好DDE裡面的主要Project Info

Domain ID: 選取剛註冊好的uuid。

Version:可以為同domain建立不同version

DeveloperID: 開發者網站註冊,可見文章末Appendix教學,上架用。

Package Name: 根據Manifest的package填寫,要相同。

Brand:主要用來觸發起始句用,如同 [4-2]的用法

App Name: 主要用來觸發起始句用,如同 [4-2]的用法

Launch Activity: 根據Manifest的activity name填寫,要相同。

以上圖為例,可以填寫如下:

 

PackageName: com.asus.zenbodialogsample

Launch Activity: ZenboDialogSample

 

如果 The full path to launch this app有打勾

PackageName: com.asus.zenbodialogsample

Launch Activity: com.asus.zenbodialogsample.ZenboDialogSample   (該Activiy的完整路徑)

 

假設目前僅為開發測試階段,可以不用填寫Developer App ID。可以先填入測試的package name,但因Zenbo依此來launch您的app,請務必確認要跟android studio的project相同。

若目前是準備將此APP放置商城,那就務必記得至開發者網站註冊App ID並且在Project Info裡面選擇  已註冊的Developer App ID。

step 3: Deploy DDE至 Zenbo


[3-1] 點選右上角Publish

[3-2]確認SLU Data Validation訊息正常後按下 Continue To Publish

 [3-3]看到Publish成功

[3-4]按下 Dev -> Deploy to Downloader.

Deploy完成之後,你將會看到以下訊息

注意事項

完成[3-1] ~ [3-4]會讓APP的語句資料上傳至Download Server

[3-5]下載DS Tool(選填,已下載者不用下載)  

Zenbo DS Tool APK 1.7

Nicola DS Tool APK

[3-6]將DS tool APK放置於Zenbo裡點取安裝(選填,已安裝過不用重複安裝)

[3-7]安裝apk 到 zenbo(選填)

備註:假設非第一次更新語料可省略

[3-8]檢視DS Tool(以下編碼非順序,僅為對應圖檔位置)

  1. Update by ID: 輸入APP的domain UUID並且按下按鈕來進行搜尋(32個亂數碼)

  2. Update by Package Name:輸入Package Name並且按下按鈕進行搜尋

  3. Set Server:選擇更新至哪個Server

  4. Status Message: 顯示當下狀態:

  5. Normal Update: 當為一般更新時,會檢查時否為最新版本,是的話才更新。若為強制模式,則無論如何都會更新。
    (同樣的一個版本,假設版本名稱為 “V3”,當檢查到有更新的V3版本時,會進行更新。這邊所說 “更新的版本”,是依時間而定,而不是依版號而定。若是不同的版號,則不會有更新的動作,因此,假設目前的版本是 “V2”,只會更新“V2”最新的版本。在這種情況下,則不會進行更新V3最新版本。)

[3-9]填選你的package name 至 欄位裡

[3-10]按下”Upadate by PKG Name”即完成更新

[3-11]確認Error Code(如果沒有Error,省略此步驟)

Error Code

  1. UUID check fail, reach max retry count, 請確認UUID是否填寫正確,和確認網路連線狀況是否通順,若填寫正確且此問題持續發生, 可能UUID認證server發生問題,請將問題回報給我們

  2. UUID check fail, app not found on server, 通常可能是操作介面上輸入了錯誤的UUID,或apk中UUID與server上資料不一致導致找不到

    • 請檢察DDE專案中的UUID,是否與APK中manifest中設定的UUID相符

  3. Get server config fail, 若重新更新語句持續發生此問題,可將問題回報給我們

  4.  Can not find package name by id, 可能app安裝失敗、或app id錯誤、或與填入的內容不匹配

    • 請檢察是否已安裝apk,apk中manifest中設定的UUID是否與DDE專案中的UUID相符

  5. Can not find app config by package name, 通常可能是apk內package name填錯

    • 請檢察apk中的package name是否與DDE專案中設定的package name是否相符

  6. Can not find DB data on server, 通常是package name 填錯、ds ver填錯、domain id找錯

    • 請檢察輸入的package name與apk中manifest設定的package name以及DDE上所設定的package name是否相符

    • 請檢察DDE上所設定的DS Version是否與apk中指定要使用的DS Version是否相同

    • 請檢察apk中manifest設定的UUID是否與DDE上的UUID相符

  7. Error happened while downloading app data,, 通常為下載語料過程中發生問題,請檢查輸入的package name和 語料UUID以及version與apk中manifest設定的package name和語料UUID以及version 和 DDE上所設定的package name是否相符,請確認網路連線狀況是否通順,若已經確認資料皆設定正確無誤且網路通順,重新嘗試更新語句此問題持續發生,可將問題回報給我們

  8. Error happened while unzip app data, 解壓失敗,若重新更新語句持續發生此問題,可將問題回報給我們

  9. Error happened while copy app data, 複製檔案失敗,若重新更新語句持續發生此問題,可將問題回報給我們

  10. No such app id, 請確認UUID資訊是否填寫正確。

 

[3-12]按下Show App Info確認有無多一個選項,內容為新加入apk 的 UUID

備註:

之後需要更新的時候可以直接點該選項,會自動把UUID填到左上方的Update by ID就不需要再填package name 或 UUID

重要事項:

第一次使用DS Tool時,務必先安apk後再使用Update by Package Name。也確實讓zenbo的manifest與apk一致。

step 4: 測試結果


[4-1]啟動Zenbo收聽

說hey zenbo啟動 Zenbo收聽

[4-2]啟動APP

在我們的hello world的sample之中,可以發現裡面的起始語句為

回到在步驟[2-6]中有介紹過的Project Info,填入 “華碩”至brand。並且確認App Name(編者在本次測試中設定為早安世界)。所以輸入”我要用華碩早安世界測試DDE”啟動App。你將會得到Plan ID “lanuchHelloWolrd_Plan” 並且會看到樣本 Project被啟動:

  

接著說 “哈囉黑色城市” 或者 “Hello Black City” 或者 “Hello White City”就會得到Plan ID以及DS系統給予的回應。

 

 

常見語料更新相關問題


若更新過程語料無法更新成功或更新成功後測試結果卻不符合預期,請您先確認:

  1. Manifest.xml的Domain UUID是否有換成您自己申請的Domain UUID
  2. Activity 是否有填寫成您的app 要開啟的activity名稱
  3. 若是第一次安裝全新的apk(全新的package name),是否有在第一次更新語料的時候利用DS Update Tool 選擇Update by Package Name 的方式更新
  4. 使用範例中的Hello World範例,是否有修正sample code中Domain UUID成您自己申請的Domain UUID

Appendix


  1. 如何註冊Developer ID
    至開發者網站 https://zenbo.asus.com/developer/
    點選Console至 App Key管理頁面

            接著應該會看到下圖頁面

          點選 “New an App” 來註冊一個新的app,並且會看到下圖頁面。 

填寫與manifest相同的Package Name,並且填寫App Name 以及 Brand Name來建立該App在Zenbo上的起始句。

         最後SUBMIT完成。回到App Management之後再度點擊回剛剛建立的App會顯示以下畫面,

就有剛建立好的Developer APP ID。

 

 

Go To Top