2016-06-28 64 views
1

我的測試Android設備是:MobileFirst 7.1加密緩存ERROR_COULD_NOT_GENERATE_KEY

  1. Genymotion自定義電話5.1.0
  2. HTC M9 5.0.2

MobileFirst平臺:7.1.0 2015年至1214年

當我嘗試使用此代碼使用加密緩存API時:

WL.EncryptedCache.open("UserInfo", true, 
function(res){console.log("success !!");}, 
function(res){console.log("errorCode : " + JSON.stringify(res));}); 

然後,我得到錯誤回調

錯誤碼:11

這的errorCode應該是WL.EncryptedCache.ERROR_COULD_NOT_GENERATE_KEY。

但此代碼在iOS設備中正常工作。

我無法找到有關此錯誤代碼Knowledge Center

有什麼不對加密緩存API或Android設備的任何信息?

+0

它是否在股票Android設備作爲與genymotion相反的工作? –

+0

嗨伊丹,我測試真正的設備HTC M9(5.0.2)仍然有這個錯誤 – DannyYang

+0

我試試這個示例代碼,但結果相同。 https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/7.1/data/storing-sensitive-data-in-encrypted-cache/#create – DannyYang

回答

1

檢查您的應用程序的wlclient.properties文件(位於本機\ assets文件夾中)。

發生這種情況的最可能原因是主機值設置爲您的計算機名稱而不是主機名或IP地址。相應地更改值,這將工作。

+0

它加密緩存API是否需要連接WL服務器?如果它確實爲什麼iOS可以在離線狀態下工作? – DannyYang

+0

默認情況下,它將連接到服務器以創建更強大的加密,但您可以選擇使用設備(不太強大)。在iOS中它的工作原理與這個問題無關。問題是主機名。 –

+0

如何「選擇使用設備」(Android)?謝謝Idan – DannyYang