【问题标题】:Strange Blackberry Issue - New Build Suddenly Requesting Permission Access奇怪的黑莓问题 - 新版本突然请求权限访问
【发布时间】:2009-06-25 18:07:54
【问题描述】:

在我的应用程序的开发测试期间,我遇到了一个奇怪的问题,即完全相同的代码库的新构建 (Build 2.0) 突然默认权限(运营商互联网、gps)是提示而不是安装时允许。

详细信息 -- 相同的代码库
所以存在两个构建,都具有相同的代码库。 Build 1.0 是上周制作/签署的。 Build 2.0 是昨天制作/签署的。如果我安装 Build 1.0,初始权限没有问题(全部允许)。但是在安装 Build 2.0 时,相同的权限(运营商互联网、gps)被设置为提示。

问题
该应用程序确实会发出 gps 和数据请求,我知道某些手机配置需要设置权限,但为什么以前不需要权限的构建(构建 1.0)突然需要它们(构建 2.0)?

我认为这可能与我的项目/构建设置有关,但我不确定是什么。有什么建议吗?

【问题讨论】:

    标签: java blackberry permissions code-signing


    【解决方案1】:

    您是否有可能在 1.0 和 2.0 之间的设备上做了一些会导致此问题的操作,例如打开防火墙?

    据我所知,您无法在构建、下载或安装时执行任何操作来设置或查询应用程序的权限。您需要等到它真正运行后,才能对应用权限进行查询或请求更改。

    您可能想尝试将以下 sn-p 代码放入应用程序的初始化中,以查看实际设置的设置:

    ApplicationPermissionsManager apm = ApplicationPermissionsManager.getInstance();
    ApplicationPermissions permissions = apm.getApplicationPermissions();
    int[] keys = permissions.getPermissionKeys();
    for (int i = 0; i < keys.length; i++) {
        int key = keys[i];
        System.out.println("APM: " + key + " = " +
            permissionToString(permissions.getPermission(key)));
    }
    

    和:

    public String permissionToString(int value) {
        switch(value) {
            case ApplicationPermissions.VALUE_ALLOW:
                return "ALLOW";
            case ApplicationPermissions.VALUE_PROMPT:
                return "PROMPT";
            case ApplicationPermissions.VALUE_DENY:
                return "DENY";
            case -1:
                return "NOT_SET";
            default:
                return Integer.toString(value);
        }
    }
    

    JDE 示例目录中的“applicationpermissionsdemo”程序有一个很好的示例,可以查询应用程序权限并从应用程序本身请求更改应用程序权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多