标签: codenameone

在代号1中捕获未知的主机异常

我正在使用代号一个构建应用程序

所以问题是,我需要使用应用程序访问URL.URL会带回一些我在屏幕上显示的结果.

所以我使用这些行来做到这一点:

ConnectionRequest c = new ConnectionRequest() {

                protected void readResponse(InputStream input) throws IOException {


                    ByteArrayOutputStream bs = new ByteArrayOutputStream();

                    int ch;

                    while ((ch = input.read()) != -1) {

                        bs.write(ch);
                    }
                    serverOutput = new String(bs.toByteArray());
                    bs.close();
                }
            };
            c.setUrl("My URL HERE");
            c.setPost(false);


            NetworkManager.getInstance().addToQueueAndWait(c);
Run Code Online (Sandbox Code Playgroud)

所以,现在,如果gprs处于活动状态,则此代码可以正常工作.

但是,如果GPRS处于非活动状态,则会抛出未知主机异常

为了捕获这个错误,我试过使用这样的try catch块:

try{
 NetworkManager.getInstance().addToQueueAndWait(c);
}
catch(Exception e)
{
Sys.out.pln(e.troString());
}
Run Code Online (Sandbox Code Playgroud)

但是,我仍然在应用程序中以对话框的形式出现错误.我如何捕获此错误并自行处理?

更新1:

我不确定这是一个特定问题的代号,还是与java相关的...所以请帮我解决这个问题.

codenameone

2
推荐指数
1
解决办法
1121
查看次数

使用Eclipse的代号

我有一个当前的java应用程序,我想在iPhone上运行.这只是为了感兴趣,因此我不介意GUI是否稍微偏离,所以我希望尽可能少地执行此操作.

我已经在eclipse中安装了一个插件代号,但我不确定从哪里开始.

我做了什么:

我创建了一个类型为codename的新项目,打开了源文件夹(在Eclipse中)并用我已编写的java文件替换了创建的文件.但是我现在在文件中每次使用swing组件时都会出错.我能做什么?

我想我不应该删除我删除的文件 - 它们只是生成的类,但后来我不知道如何将它与我当前的java程序合并(它是国际象棋应用程序btw).

此外,我所有的java文件都在一个名为chess的包中 - 这是一个问题吗?

对不起,我只是不确定从哪里开始 - 在互联网上找不到任何有用的东西.我需要的只是获取我的java代码并转换为c(Obs)的最简单方法,以及将其传输到我的iPhone上运行的方法.

提前感谢任何建议.PS我刚注意到我认为文件中缺少某些属于代号的导入.有没有办法可以自动插入所有必需的导入?PPS OK一对夫妻进口eclipse已经决定插入已删除的错误.这些是诸如此类的

import com.codename1.ui.events.ActionEvent;

JFrame,JChechkBox,JButton,JLabel等需要哪些导入?有没有 ...*; 我可以导入以获取必要包的目录?

再次感谢你!

java iphone objective-c ios codenameone

2
推荐指数
1
解决办法
1678
查看次数

在Codename One游戏

我知道可以使用代号1创建游戏,但我对此有疑问.我目前有一个Windows Phone 7游戏,我想用代号1重新创建,但我想知道平台的效率.我主要关注滞后问题,所以我想知道是否有人有代号为游戏编写游戏的经验,其中比其网站上显示的纸牌游戏更多.

我也对机制感兴趣,是否可以使用精灵?

所以主要问题:

  • 性能?(不代表一个人使用XNA作为默认渲染器吗?)

  • 精灵?

codenameone

2
推荐指数
1
解决办法
508
查看次数

如何更改codenameone android应用程序中状态栏的颜色?

我想更改状态栏的颜色以匹配我的应用程序背景,我该怎么做?

java android codenameone android-statusbar

2
推荐指数
1
解决办法
506
查看次数

读取以[并以]结尾的JSON数据

我正在使用带有NetBeans插件的Java,称为CODAPPS来检索,解析和显示JSON数据.

我正在关注使用Google Firebase数据库生成的JSON数据的示例,但我使用的是SlashDB.

出于某种原因,来自SlashDB的JSON数据分别以[和开头和结尾].

我收到以下错误:

org.json.JSONException: A JSONObject text must begin with '{' at 1 [character 2 line 1]
    at org.json.JSONTokener.syntaxError(JSONTokener.java:433)
    at org.json.JSONObject.<init>(JSONObject.java:198)
    at org.json.JSONObject.<init>(JSONObject.java:325)
    at userclasses.StateMachine.onMain_ButtonAction(StateMachine.java:80)
    at generated.StateMachineBase.handleComponentAction(StateMachineBase.java:572)
    at com.codename1.ui.util.UIBuilder$FormListener.actionPerformed(UIBuilder.java:2831)
    at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:345)
    at com.codename1.ui.Button.fireActionEvent(Button.java:411)
    at com.codename1.ui.Button.released(Button.java:442)
    at com.codename1.ui.Button.pointerReleased(Button.java:530)
    at com.codename1.ui.Form.pointerReleased(Form.java:2578)
    at com.codename1.ui.Form.pointerReleased(Form.java:2514)
    at com.codename1.ui.Component.pointerReleased(Component.java:3119)
    at com.codename1.ui.Display.handleEvent(Display.java:2017)
    at com.codename1.ui.Display.edtLoopImpl(Display.java:1065)
    at com.codename1.ui.Display.mainEDTLoop(Display.java:994)
    at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
    at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
Picked up _JAVA_OPTIONS: -Xmx4G
BUILD SUCCESSFUL (total time: 15 seconds)
Run Code Online (Sandbox Code Playgroud)

我的JSON数据如下所示:

[
    {
        "description": "Example Fast Festival Motorcycle with Boho Beading", …
Run Code Online (Sandbox Code Playgroud)

java json codenameone slashdb

2
推荐指数
1
解决办法
507
查看次数

如何在codenameone中显示容器中心的两个或多个标签

我是Codenameone的新手是否有任何选项可以对齐标签取决于另一个标签,如对齐底部,顶部,右侧和左侧选项?

如何在父布局的中心对齐多个标签?

在这里,我附上了我试过的代码:

Container center = new Container(new BorderLayout());

    Label des = new Label((String) data.get("title"));
    des.setUIID("MultiLine2");
    center.addComponent(BorderLayout.NORTH,des);
    Label author = new Label((String) data.get("author"));
    author.setUIID("MultiLine2");
    center.addComponent(BorderLayout.SOUTH,author);

    cnt.addComponent(BorderLayout.CENTER, center);
Run Code Online (Sandbox Code Playgroud)

我像下面的图像一样流露出来我像下面的图像一样流露出来

在这里,我附上了项目所需的内容这是我的要求

任何人都可以帮助我如何才能满足我的要求?

codenameone

2
推荐指数
1
解决办法
507
查看次数

CN1中的NSAllowsArbitraryLoadsInWebContent

我正在尝试处理Apple对Codename One的http限制.

根据iOS Cocoa keys doc,NSAllowsArbitraryLoadsInWebContent将按照以下说明在iOS 10上运行:

一个可选的布尔值,仅适用于要加载到以下类的实例中的内容:

WKWebView

UIWebView(仅限iOS)

WebView(仅限macOS)

将此键的值设置为YES可在应用程序的Web视图中获得ATS策略的免除,而不会影响NSURLSession连接的ATS强制安全性.

默认值为NO.

要支持旧版本的iOS和macOS,您可以使用此密钥并仍然手动配置ATS.为此,请将此键的值设置为YES,并配置NSAllowsArbitraryLoads子项.

如果将此键添加到Info.plist文件中,则无论键的值如何,ATS都会忽略NSAllowsArbitraryLoads键的值.从iOS 10.0和macOS 10.12开始提供.

我的第一个问题是:

BrowserComponent是否公开WKWebView或UIWebView?在这种情况下,有问题的Cocoa密钥将起作用,并允许我避免iOS 10的风险NSAllowsArbitraryLoads.

第二个问题:

为了确保与早期版本的兼容性,我知道我应该这样做:

  • 将NSAllowsArbitraryLoads设置为true(由于以下几点,这将在iOS 10中被忽略).

  • 将NSAllowsArbitraryLoadsInWebContent设置为true(这将在iOS 9中被忽略,并且将使用NSAllowsArbitraryLoads).

我对吗?

谢谢

plist codenameone

2
推荐指数
1
解决办法
1016
查看次数

无法使用iOS 9.x设备在Codename One下连接到HTTP URL

我有一个Java的Web服务运行到Glassfish.当我尝试在iOS中使用此WS时,它不起作用,并且方法ConnectionRequest.readResponse(InputStream input)接收没有信息的输入.如果我尝试将其转换为byte [],则返回NULL.

实际上该服务没有到达WS.但它传递给ConnectionRequest.readResponse方法.

当使用带有@GET注释的WS并使用GET时它也可以工作.

java codenameone ios9

1
推荐指数
1
解决办法
191
查看次数

代号一 - 存储敏感数据

敏感数据我的意思是:

  • 证书
  • 密码
  • 其他私人秘密

问题1第三方应用程序有什么方法可以访问使用Storage类存储的这些信息吗?

问题2。我认为使用根本不安全FileSystemStorage。这样对吗?

问题3在Codename One中存储敏感数据的最安全方法是什么?

java security codenameone

1
推荐指数
1
解决办法
175
查看次数

在服务器构建过程中突然出现错误(Codename One)

我不记得在我的计算机上改变了什么但是自从大约18:40 CET以来我再也无法向CN1发送任何构建了.这是它显示的错误:

java.net.ConnectException: Connexion terminée par expiration du délai d'attente (Connection timed out)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:668)
at sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1138)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1022)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1020)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivilegedWithCombiner(AccessController.java:782)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1019)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(HttpURLConnection.java:1316)
at sun.net.www.protocol.http.HttpURLConnection.access$100(HttpURLConnection.java:91)
at sun.net.www.protocol.http.HttpURLConnection$8.run(HttpURLConnection.java:1283)
at sun.net.www.protocol.http.HttpURLConnection$8.run(HttpURLConnection.java:1281)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivilegedWithCombiner(AccessController.java:782)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1280)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:250)
at com.codename1.build.client.BuildProcess.uploadToS3(BuildProcess.java:305)
at com.codename1.build.client.BuildProcess.sendS3Build(BuildProcess.java:366)
at com.codename1.build.client.BuildProcess.sendRequestToServer(BuildProcess.java:432) …
Run Code Online (Sandbox Code Playgroud)

codenameone

1
推荐指数
1
解决办法
108
查看次数

在创建表时代表一个SQLite错误

我正在开发一个将用户事件存储在数据库中的应用程序.为此,我使用SQLite进行存储,但是当我执行查询时,它会抛出错误. 以下是我点击添加按钮时触发操作的代码: -

add.addActionListener(new ActionListener() {
   @Override
   public void actionPerformed(ActionEvent evt) {
     Log.p(dateLabel.getText().toString());
     //if((dateLabel.getText() == null) && (eventArea.getText() == null) && (descriptionArea.getText() == null)){
     if ((dateLabel.getText() == "") || (eventArea.getText() == "") || (descriptionArea.getText() == "")) {
      Dialog.show("Required field", "Please fill all the fields", "OK", "");
     }
     //}
     else {

      Label date1 = new Label("Event Date:- ");
      Label dateLabel1 = new Label(dateLabel.getText());
      Label event1 = new Label("Event:- ");
      Label eventArea1 = new Label(eventArea.getText());
      Label description1 = new Label("Event Description:- "); …
Run Code Online (Sandbox Code Playgroud)

java mysql sqlite android codenameone

1
推荐指数
1
解决办法
108
查看次数