如何在blackberry中实现自动更新功能

如何在blackberry中实现自动更新功能,blackberry,java-me,auto-update,Blackberry,Java Me,Auto Update,我想开发可以与我的黑莓应用程序集成的代码。这将检查服务器是否有任何可用的新版本,如果找到新版本,它将自动下载、安装或替换旧版本,运行新安装的应用程序 目标是不需要用户输入。以下建议适用于OTA安装。我不确定黑莓世界是如何处理这个问题的 您可以使用返回应用程序最新版本的服务。 应用程序将在启动时调用此服务(或一天/一周/一个月调用一次-无论您如何定义)。然后你做这个检查: if(serverReturnedVersionNumber>currentApplicationVersionNumb

我想开发可以与我的黑莓应用程序集成的代码。这将检查服务器是否有任何可用的新版本,如果找到新版本,它将自动下载、安装或替换旧版本,运行新安装的应用程序


目标是不需要用户输入。

以下建议适用于OTA安装。我不确定黑莓世界是如何处理这个问题的

您可以使用返回应用程序最新版本的服务。 应用程序将在启动时调用此服务(或一天/一周/一个月调用一次-无论您如何定义)。然后你做这个检查:

if(serverReturnedVersionNumber>currentApplicationVersionNumber) {
    //popup to ask if user wants to upgrade?
    BrowserSession browser = Browser.getDefaultSession();
    browser.displayPage(urlToDownloadNewVersion);
    System.exit(0);
}

urlToDownloadNewVersion
应该返回一个
text/vnd.sun.j2me.app描述符
mime类型(即.jad文件),该类型应该安装新版本的应用程序(OTA安装)。

以下建议适用于OTA安装。我不确定黑莓世界是如何处理这个问题的

您可以使用返回应用程序最新版本的服务。 应用程序将在启动时调用此服务(或一天/一周/一个月调用一次-无论您如何定义)。然后你做这个检查:

if(serverReturnedVersionNumber>currentApplicationVersionNumber) {
    //popup to ask if user wants to upgrade?
    BrowserSession browser = Browser.getDefaultSession();
    browser.displayPage(urlToDownloadNewVersion);
    System.exit(0);
}

urlToDownloadNewVersion
应该返回一个
text/vnd.sun.j2me.app描述符
mime类型(这是一个.jad文件),它应该安装新版本的应用程序(OTA安装)。

我认为黑莓应用程序世界在从黑莓应用程序世界下载任何应用程序时都会采取以下步骤

  • 从服务器下载cod文件
  • 将该代码文件保存在本地文件系统中,并应用enableDRMForwardLock()
  • 使用CodeModuleManager安装cod文件
  • 使用

    codeModuleGroup.setProperty(字符串名称, 字符串值) 设置jad属性。如RIM_应用程序世界名称、RIM_应用程序世界更新可用

  • 所以我认为你可以做三件事

    a) 如果您的应用程序位于blackberry app world上,请阅读jad属性RIM_app_world_UPDATE_AVAIL并启动blackberry app world

    b) 按照Mugur的建议启动浏览器

    c) 就像blackberry app world下载cod文件一样,安装该cod文件并卸载当前应用程序。

    我认为,当您从blackberry app world下载任何应用程序时,blackberry app world都会采取以下步骤

  • 从服务器下载cod文件
  • 将该代码文件保存在本地文件系统中,并应用enableDRMForwardLock()
  • 使用CodeModuleManager安装cod文件
  • 使用

    codeModuleGroup.setProperty(字符串名称, 字符串值) 设置jad属性。如RIM_应用程序世界名称、RIM_应用程序世界更新可用

  • 所以我认为你可以做三件事

    a) 如果您的应用程序位于blackberry app world上,请阅读jad属性RIM_app_world_UPDATE_AVAIL并启动blackberry app world

    b) 按照Mugur的建议启动浏览器

    c) 就像blackberry app world下载cod文件一样,安装该cod文件并卸载当前应用程序。

    嗨,Vivart,你确定“c”选项吗?这意味着我可以通过编程方式从我的应用程序中下载和安装应用程序。我尝试了您的c选项,并相应地更改了代码,应用程序开始下载,然后在120000毫秒后超时,在失败之前,我读取了与AppWorld相关的日志0:10:31.944:[AppWorld]-01/23 11:38:00 22错误更新时出错。Updater load()id1 nullHi Vivart,您确定使用“c”选项吗,这意味着我可以通过编程方式在我的应用程序中安装应用程序下载和安装。我尝试了您的c选项,并相应地更改了代码,应用程序开始下载,然后在120000毫秒后超时,在失败之前,我读取了与AppWorld相关的日志0:10:31.944:[AppWorld]-01/23 11:38:00 22错误更新时出错。更新程序加载()id1 null