3 Replies Latest reply: May 22, 2013 1:43 PM by jsmith RSS

    netbeans JavaFx -run in browser

      I would like to write a desktop app.
      If I configure it to run in browser the meaning would be that I can run my app on an Android tablet for example?
      I need a complex desktop app and the reason I am trying to use NetBeans is that I need the option to run the app from some mobile devices too and I don't want to develop for web.

      My app will run mainly from desktop or laptop PC's with win 7 for now.

      Thank you so much for your time.
        • 1. Re: netbeans JavaFx -run in browser
          If I configure it to run in browser the meaning would be that I can run my app on an Android tablet for example?
          There is no JavaFX runtime for Android.
          I need a complex desktop app
          Android is not a good target platform for such an application.
          • 2. Re: netbeans JavaFx -run in browser
            Thank you.

            Sorry , please help me understand what are the advantages of the run in browser option.

            I understand that Android is not a good platform for my app but I need to let Android users to use some parts of my app.
            Do I have any way to use a desktop app on Android or I have to develop it for Android?
            I am trying to choose the right app type for my job.

            Thank you
            • 3. Re: netbeans JavaFx -run in browser
              Do I have any way to use a desktop app on Android or I have to develop it for Android?
              You cannot use JavaFX for this as JavaFX doesn't run on Android.

              You have to develop your application for Android using Android compatible technologies.

              JavaFX is not currently an Android compatible technology (that may change sometime in the future - check back in a year or so).

              As far as I understand Android applications don't run on desktop systems (though I don't do Android development, so I could be wrong).

              The only current technology which is going to work on desktop systems and mobile systems today (that I am aware of) is html5, so if you want to develop an app which works on a desktop and on a mobile device, you could use that.

              It is rare experience to have an optimal user experience for an application created using the same technology and design on both a mobile and desktop platform. Most likely you need to redesign the application for the mobile platform anyway due to the vastly different screen, processing and input capabilities of mobile devices vs desktop devices, as well as constraints imposed by application stores, installation technology and runtime technology for mobile and desktop systems.

              So just plan on writing different apps in different technologies for desktop, android and iOS.

              a) Pick HTML5 and design different pages for your HTML5 application for different devices.

              b) Write your desktop application in JavaFX, your Android application in Google's Android toolkit and your iOS application in the Apple's iOS toolkit.

              Start with just developing your application for one target device type - which-ever is most important for your users.
              To do that use the best technology for that target device for your users so that your users get an optimal experience on that device.
              Once you have a working application for one device, only then consider doing the porting effort to allow it to work on other devices.
              the run in browser option
              For a description of the browser option, see the Application Execution Modes section of the JavaFX deployment guide:

              The browser option uses plugin technologies to run in browser/OS combinations which support the JavaFX browser plugin and runtime environment.

              You can think of the JavaFX browser plugin as similar to the Flash plugin; it's an extra bit of technology the user downloads and installs separate from their browser. The plugin allows users to access content and programs in a different format than their standard browser is able to use.

              Like Flash, the JavaFX browser plugin is not universal, for example there is no equivalent of it does not work on mobile platforms such as Android or iOS.

              Do not think of the JavaFX browser plugin like HTML where if a user points a standard browser at a url containing a HTML page, the browser will make a best effort to render and run the HTML/JavaScript content. The JavaFX browser plugin requires a user to install extra software on a compatible system before the user can view JavaFX content embedded in HTML pages accessed through a browser.

              Refer to the OS/Browser combinations in the JavaFX supported configurations to see what is supported:
              Any system outside the list of supported configurations almost definitely will not be able to use JavaFX.

              The JavaFX browser plugin has a history of being difficult to support for users, unreliable and insecure.

              I'd recommend deploying your JavaFX desktop application as a self-contained application instead if you wish your application to work reliably for your users: