当前位置: 首页 > 知识库问答 >
问题:

代号一个应用程序不能为Windows构建

应安国
2023-03-14

我正在尝试为windows phone构建我的应用程序,但代号为one的构建服务器给了我构建错误。以下是错误日志:https://s3.amazonaws.com/codenameone-build-response/7e34c6a4-f939-4044-8ab3-afbad45e7447-1450100218601-error.txt

当我为Android构建它时,一切都很好。

当我从NetBeans运行我的应用程序时,一切似乎都很好,尽管控制台显示以下红色句子:

>

  • Compile强制遵守支持的API的/特性,以实现最大的设备兼容性。这允许更小的代码大小和更广泛的设备支持

    注意:C:\Users\Andrius\Documents\NetBeansProjects\dogspuppiesforsaleApp\src\userclasses\StateMachine。java使用或覆盖不推荐使用的API。注意:有关详细信息,请使用-Xlint:deprecation重新编译。注意:C:\Users\Andrius\Documents\NetBeansProjects\dogspuppiesforsaleApp\src\userclasses\StateMachine。java使用未经检查或不安全的操作。注意:使用-Xlint重新编译:未选中以获取详细信息。

    注意:C:\Users\Andrius\Documents\NetBeansProjects\dogspuppiesforsaleApp\src\userclasses\StateMachine。java使用或覆盖不推荐使用的API。注意:有关详细信息,请使用-Xlint:deprecation重新编译。注意:C:\Users\Andrius\Documents\NetBeansProjects\dogspuppiesforsaleApp\src\userclasses\StateMachine。java使用未经检查或不安全的操作。注意:使用-Xlint重新编译:未选中以获取详细信息。

    2015年4月14日下午3:44:25爪哇。util。prefs。WindowsPreferences警告:无法在根0x8000002处打开/创建prefs根节点Software\JavaSoft\prefs。Windows RegCreateKeyEx(…)返回错误代码5。

    一位代号为One的管理员告诉我,Windows phone在3d阵列方面存在问题。我在我的应用程序中使用JSON数据,所以问题可能在这里?

    protected void setCategories() {
            JParser parser = new JParser("http://www.url.com/mobileApp/categories.php");
            this.resultArray = parser.returnArray();
            for (int i = 0; i < this.resultArray.length(); i++) {
                try {
                    JSONObject jsonObject = this.resultArray.getJSONObject(i);
                    categories.add(new Category(jsonObject.getInt("id"), jsonObject.getString("title")));
                } catch (JSONException ex) {
                    Dialog.show("Error", ex.toString(), "Ok", null);
                }
            }
    }
    

    JParser类:

    public class JParser {
        public ConnectionRequest r;
        public JSONArray jsonArray;
        public String url;
    
        public JParser(String url) {
            this.jsonArray = new JSONArray();
            this.url = url;
            this.r = new ConnectionRequest() {
                @Override
                protected void readResponse(InputStream input) throws IOException {
                    JSONParser p = new JSONParser();
                    Hashtable h = p.parse(new InputStreamReader(input));
    
                    try {
                        String hashString = h.toString();
                        JSONObject entries = new JSONObject(hashString);
                        JSONArray rez = new JSONArray();
                        rez = entries.getJSONArray("root"); //musu JSON objektas visada prasides su root
                        setArray(rez);
                    } catch (JSONException ex) {
                        System.out.println(ex);
                        Dialog.show("Error", ex.toString(), "Ok", null);
                    }
                }
            };
    
            this.r.setUrl(this.url);
            this.r.setPost(false); //nieko nepostinam, tik pasiimam parsinti
            InfiniteProgress prog = new InfiniteProgress(); //nesibaigiantis procesas
            Dialog dlg = prog.showInifiniteBlocking(); //rodom dialoga su loading
            this.r.setDisposeOnCompletion(dlg); //kai baigia krauti, isjungiam
            NetworkManager.getInstance().addToQueueAndWait(this.r); //pridedam i eile
            this.r.getResponseData(); //gaunam duomenis
        }
    
        public void setArray(JSONArray a) {
            this.jsonArray = a;
        }
    
        public JSONArray returnArray() {
            return this.jsonArray;
        }
    } 
    
  • 共有1个答案

    岳浩穰
    2023-03-14

    我真的不能告诉你的错误是从哪里来的,但你可以重写你的代码,以读取响应中的readContent()处理json响应中的postContent(),没有JsonArray(),尝试下面:

    public class JParser {
    
    public ConnectionRequest r;
    public String url;
    
    public JParser(String url) {
        this.url = url;
    
        InfiniteProgress prog = new InfiniteProgress();
        Dialog dlg = prog.showInifiniteBlocking();
        try {
            this.r = new ConnectionRequest() {
                Map response = null;
    
                @Override
                protected void readResponse(InputStream input) throws IOException {
                    JSONParser parser = new JSONParser();
                    response = parser.parseJSON(new InputStreamReader(input));
                }
    
                @Override
                protected void postResponse() {
                    List responseList = (List) response.get("root");
                    if (responseList != null) {
                        // save or use your response as a list here, for exampple:
                        System.out.println(responseList.toString()); // output for debug
    
                        // Or even loop through the result:
                        for (Object resList : responseList) {
                            Map tempHash = (Map) resList;
                            String result = tempHash.get("anElementInsideRoot").toString();
                            System.out.println(result);
                        }
                    } else {
                        //It returns null value
                    }
                }
            };
    
            this.r.setUrl(this.url);
            this.r.setPost(false);
            NetworkManager.getInstance().addToQueueAndWait(this.r);
        } catch (Exception ex) {
            System.out.println(ex.getMessage());
            Dialog.show("Error", ex.getMessage(), "Ok", null);
        } finally {
            dlg.dispose();
        }
    }
    }
    

    也删除this.r.get响应数据();它是不需要的。

     类似资料:
    • 当我从一个表单移动到另一个表单时,应用程序关闭了,我得到了错误“application close不幸地”,并在日志文件“java.lang.NullPointerException”中得到了下面的错误:尝试在一个空对象引用上调用虚拟方法'void com.codename1.impl.Android.InplaceEditView$editView.switchtotextarea(com.co

    • 问题内容: 我通常在Linux系统上工作,但遇到一种情况,我需要编写一个客户端应用程序,该应用程序可以作为服务在Windows上运行。有人可以帮助我或指导我如何在Windows环境下构建MenuBar应用程序(例如Dropbox),该应用程序从操作系统启动开始,图标位于TaskBar中,然后单击该应用程序图标将显示一个菜单。 我的脚本语言是python。谢谢。 问题答案: 您可以使用pywin32

    • 我正在尝试构建一个应用程序,它将根据赌博的鞅来告诉你输赢。 我的想法是,你可以设定你的钱、目标和最低赌注。 例如我设置我现在的钱是1000,我的目标是得到1100,最低下注是100,应用程序会显示我是否赢了。 实际上,我的想法是构建这个应用程序来计算获胜率,但我不知道怎么做,因此我只是尝试先构建一个更简单的应用程序,如果可以的话,再进一步修改。 但是当我尝试运行应用程序时,应用程序一直显示“你输了

    • 我有一个代号为one的应用,在android和IOS中运行正常。第二个应用程序,在android版本中正常工作,但在发送到服务器后,在Ios版本中总是显示错误。我正在删除构建,刷新libs文件,但每次,它在构建后显示一个错误,只有在应用程序不工作。最近的错误:

    • 如何在本机操作系统共享支持下共享代号为One的视频?ShareButton只支持文本和图像。

    • 我需要分享一个视频链接从Youtube应用程序到我的代号一个应用程序在iOS上。 这似乎是可能的,根据:https://stackoverflow.com/a/38036939/1277576