2009-11-10 53 views
3

我正在編寫將使用特權操作(如消息傳遞)的Java ME應用程序。默認情況下,系統會提示用戶確認每個操作,但我希望將其作爲後臺服務運行。NetBeans移動中的特權操作

文檔說要在jad文件中請求權限,我已經這麼做了,並假定它可以在設備上工作。不過,我想先在Netbeans移動模擬器上進行測試。

我嘗試將應用程序簽名爲「可信」,但我模擬的執行仍然提示用戶許可。

回答

2

MIDP的安全模型需要在2個部分進行解釋:

手機(或仿真器)中包含的安全策略。
安全策略由多個域組成。
每個域都定義了功能組和根證書。
在受保護的API(即消息傳遞)的域中,功能組決定哪些保護選項(自動同意,用戶始終同意,用戶同意一次...)。

適用於您的MIDlet的域取決於哪個根證書信任您用MIDlet簽名的證書。

您的問題是,您認爲保護選項應該在您認爲您的MIDlet所屬的域中的API所需的保護選項與仿真器安全策略中實際定義的內容之間存在不匹配。

編輯:

如何對基於WTK的仿真器:

有在${netbeans_installation_folder}\mobility8\WTK2.5.2\j2mewtk_template\appdb\文件夾3個_policy.txt*文件。

它們都包含「別名」定義列表和「域」定義列表。

使每個域具有與「最大」域相同的內容。

之後,您的模擬器將再也不會要求任何用戶權限

如果您已經使用了Netbeans中包含的模擬器,那麼您可能需要對${netbeans_installation_folder}\mobility8\WTK2.5.2\appdb\文件夾進行相同的更改。

+0

所以不知道如何編輯模擬器的安全策略?運行時選項相當有限。 – 2009-11-20 19:08:44

+0

@michael aubert請問你認爲你可以幫助我解決這個問題https://stackoverflow.com/questions/23730176/j2me-how-to-parse-a-byte-array-into-xml-and-then-read -and-顯示特定數據 – Axel 2014-05-19 12:21:53