Building a desktop app - use AIR or not?

Hello, I'm guessing that the keyword "desktop" would make you recommend I use Adobe AIR if I'm building with Flex.  Basically, we're building a desktop application that will occasionally sync with the server where a separate but related application resides.  Most of the time, the desktop app needs to be able to function with or without network connectivity. 
So far, we have begun by playing with Flex and running it in a browser on a local machine.  We could simply use XML files for local storage instead of a database, and it seems like we can get a fair amount of functionality implemented this way.  However, I'm wondering if we should definitely be using AIR instead. 
I'm coming with a server-side Java background, so I'm also trying to figure out how people write the business layer in this world (the business logic tier in between the presentation and data/service layers).  A lot of places I'm finding online keeping talking about Flex being for presentation only, but with an Adobe AIR app, do people often write business objects that sit between the GUI components and the database?  In some of the AIR programming guides, I'm not seeing any mention of that.
I'm trying to make a case for AIR, so I need a little bit of help from you...
Thanks!

I'm coming with a server-side Java background, so I'm also trying to
figure out how people write the business layer in this world (the
business logic tier in between the presentation and data/service
layers).  A lot of places I'm finding online keeping talking about Flex
being for presentation only, but with an Adobe AIR app, do people often
write business objects that sit between the GUI components and the
database?  In some of the AIR programming guides, I'm not seeing any
mention of that.
I'd like to add a "me too" to this.  I haven't done a lot of research into AIR yet and it's not immidiately obvious what's involved with getting offline functionality.  I think I basically have the same question as the OP; do I end up (re)writing a bunch of business logic in the Flex client (I don't want to).
I'm still using Java EE on the server for a (business logic) data access layer.  Specifically, I'm using a DTO inheritance strategy and setting up to auto-generate (mirror) .as DTOs with (Maven) flexmojos (I think flexmojos uses GraniteDS, but I use BlazeDS - the code generation tool shouldn't matter AFAIK).  So far, I'm quite happy with how the whole setup works.  However, I'd love to hear what kind of Java + Flex + AIR development strategies others have been finding successful since a significant portion of the online resources and documentation I've found tend to be somewhat trivialized.
I hope I'm not hi-jacking the OPs question here (if so, I apologize), but what I'd like to know is if AIR is capable of any 'for free' type offline capabilities (like the way BlazeDS and LCDS 'just work').
Ryan

Similar Messages

  • TS1702 downloaded app using computer will not load on to phone just says waiting

    downloaded app using computer will not load on to phone just says waiting

    Hello there Hotley808,
    I would recommend deleting the app, and then redownloading it from the iOS App store.
    Downloading past purchases from the App Store, iBookstore, and iTunes Store
    http://support.apple.com/kb/ht2519
    Apps on iOS
    Open the App Store on your device.
    Make sure you are signed in with the same Apple ID used for the original purchase.
    Tap Updates from the bottom navigation bar. 
    Tap Purchased on the resulting screen.
    Locate the app in your Purchased tab.
    Tap the download button.
    All the very best,
    Sterling

  • Custom fonts on iOS app using AIR 3.9

    we are building an app for iOS using AIR 3.9 where we have to display the text using different fonts which are not available on iOS 5 or later. To fix this issue we have found a solution using XCode via ANE where by using "CTFontManagerRegisterGraphicsFont" class we can download the font from a location and register it on the device(working on mac using simulator ).  But when we are packaging the ANE with AIR 3.9, it gives us the error which says that:-
    Error occurred while packaging the application:
    Undefined symbols for architecture armv7:
      "_CTFontManagerRegisterGraphicsFont", referenced from:
          ___setPath_block_invoke in libnet.example.download.a(IOSFontLib.o)
    ld: symbol(s) not found for architecture armv7
    Compilation failed while executing : ld64
    can anyone suggest where we are going wrong!
    thanks in advance

    According to this post, using CTFontManagerRegisterGraphicsFont should still work on iOS too:
    http://stackoverflow.com/questions/4942449/ios-programmatically-add-custom-font-during-run time
    since it requires the CoreText framework have you included the following option in your <linkerOptions> set in platform.xml?
    <option>-framework CoreText</option>

  • Lightroom is shown as installed in creative cloud desktop app but it is not

    Hi,
    I am new to the creative cloud and signed up for the photographic bundle.
    I went to the lightroom download first in the creative cloud download center and downloaded the cc desktop app as described.
    After installation the cc desktop app shows lightroom installed and up to date even when it hasn't installed anything. Lightroom is not show in the list of available app since it "thinks" it is already installed, I guess.
    Is there a way to reinstall Lightroom?
    I am working on an iMac, i5, 12GB RAM with OS X Mavericks and Fusion Drive
    Best regards
    Marco Runge

    Uninstall whatever version of LR you have install, now, perhaps a trial that has expired.  Use the normal uninstall process for your computer OS.
    Then Quit the CC Desktop application, then restart it.  At this point it’ll look for what is still installed locally and see that LR has been uninstalled, and offer you the CC version to install.
    If that doesn’t work try the more severe things, here:
    http://helpx.adobe.com/creative-cloud/kb/aam-lists-removed-apps-date.html

  • Deploying Java Desktop App using executable JAR files

    Hi there.
    Today I am very optimistic about java. I am a beginner, and I had tried (in my few free time) to understand how to deploy java desktop apps.
    I am using the lattest NetBeans IDE to do the programming and it is very very fast and optimized.
    Going to the point, I tried some time ago to deploy an application (made with this IDE) using JAR files, but even though the application run well on my IDE, when I packed it, it rised an error saying that
    java.lang.NoClassDefFoundError: org/netbeans/lib/awtextra/AbsoluteLayout
    I was using an absolute layout on my JFrame forms and this AbsoluteLayout is provided by netbeans and not by the normal SDK.
    I then looked for the absolute layout class and found a jar file in the following path:
    C:\netbeans\modules\ext\AbsoluteLayout.jar
    So I mounted the Jar file in my File Systems and then added the contents of the file to myApp.Jar file.
    I used the automated Jar Recipe Packaging feature of netbeans, that is why I needed to mount the AbsoluteLayout.jar file into my file systems.
    Now it runs fine by just right clicking the MyApp.jar file from Windows Explorer.
    In a next reply to this topic I will include some sample code so that anybody requiring to do such implementation can take this for help.
    Regards!
    JN

    Well,
    I will take some time here to show the basic source code and procedure to create a desktop application, pack it up in a Jar file for deployment, add other classes or jars to the deployment jar file and finally open the jar file as an executable. This applies for either windows and linux environments.
    Take in count i am using Netbeans IDE 3.x (3.5)
    First I open the IDE and create a new project called MyDesktopApp. This is done by going to the menu Project / Project Manager. Then click on the New button and specify the project name and click on OK.
    At this point, the Filesystems tab in the project explorer is empty. So I mount a directory to store myDesktopApp in it. I selected c:\MyDesktopApp but you can select any name you want.
    To mount the directory you follow these steps:
    1. Right-click on File Systems
    2. From the contextual menu select Mount > Local Directory
    3. In the filechooser window, you just browse it and SELECT the directory to mount. Be aware that you can even create the directory on this window. Do not enter (double-click) into the directory you want to mount, just select it and click on finish...
    4.Then the directory entry appears under the filesystems node of the project explorer.
    Now you have to create your application. You can either create a package (special configured and tracked directory) or you can create the clases directly inside the directory. For tidy project, I will create the package.
    To create the package follow these instructions:
    1. Right-click on the mounted directory and from the contextual menu select New > Java Package
    2. In the New Wizard - Java Package window, type the package name and click on finish. I use the "MyDesktopApp" as package name.
    OK. Now the package is created under the mounted directory. Now we have to create the Main Class. In this case I will use a JFRAME as the main class but you can create any class you want.
    To create the JFRAME as main class follow these steps:
    1. Right click on the java package you just created and select New>JFRAME from the contextual menu. If you do not see the JFRAME option on the NEW sub menu you will have to select the All Templates option. I explain the All Templates option now on, it will be easier to use the JFRAME if available. Once you use JFRAME with the all templates then the JFRAME will show up in further NEW usage.
    2. So finally we used the All Templates, and you select the Java GUI Forms > JFRAME form option and click on NEXT.
    3. Give it a name. (I used MyDesktopAppFrm) and click on finish. Be aware you can set advanced options by clicking on next. But for the purposes of this topic we will use default options so click on FINISH
    4. A new JFRAME form appears inside your package. Right click on the form and select Set layout > Absolute Layout.
    5. Add some controls and code. I added a label and a button. And coded the ActionPerformed event of the button to say hello! on the label. this is up to you. The code just looks as follows:
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    // Add your handling code here:
    jLabel1.setText("Hello folks!");
    6. Compile and execute the form.
    Let's say this is our Desktop Application. Now We will pack it in a Jar in two steps...
    A. Create a JAR file (Recipe)
    1. Right-click on your package and select New > All Tempaltes (Long Route) You can also select New > JAR Recipe if available.
    2. On the New Wizard Window, choose the JAR ARchives > JAR Recipe template and click on NEXT
    3. I used MyDesktopApp as the file name and Defaults and then click on Next.
    4. Specify the JAR Contents. Select the Package (not the mounted folder) from the mounted file system and click on add and then click on NEXT twice...
    5. On the JAR Manifest window, click on GENERATE
    6. Edit the manifest in the window to add the following code:
    Main-Class: MyDesktopApp.MyDesktopAppFrm
    7. Ensure the Main-Class definition is the same as your java package and JFRAME name. Click on FINISH
    8. At this point we have a jar file in your project directory but this file wont run because it is missing some Netbeans clases that we will add in the next set of steps... Just to check, compile the file (right click on the JAR file and compile) and try to execute. It must compile but must not execute.(well if it executes you are done. It may execute if you did not set the lay out of the form as AbsoluteLayout)
    B. Add the AbsoluteLayOut to the JAR
    1. Right click on File Systems and select Mount > Archive Files
    2. Look for your netbeans installation folder and select the following file:
    .../netbeans/modules/ext/AbsoluteLayout.jar
    3. Click on finish
    4. Now the JAR File is mounted in the file systems.
    5. Right-click on your MyDesktopApp.JAR file and select properties.
    6. Look for the contents property click once on it and then on its elipsis button [...]
    7. From the FileSystems box in the Contents window, select the AbsoluteLayOut file and click on Add
    8. Then the system asks you if you are sure. Of course you are so click OK. (If not sure, just read the message text and click OK...:-))
    9. Click on OK
    10. Compile your JAR Recipe (right click on it and Compile)
    11. Now you must be able to run the file by right clicking it and EXECUTE.
    12. Also you must be able to run the file by double clicking the file from a Windows Explorer. You may receive a message asking to select the program to run the file with. You must browse and select the Javaw.exe file in the bin directory of your Java RUn Time installation. This is typically located at C:\j2sdk1.4.0_01\jre\bin or something like that. Use the File-Search feature of window to locate the JAVAW.exe file if needed.
    I hope this long explanation helps somebody to deploy Java Desktop applications. Please reply the message if it helps you just to know it was useful.
    Thanks for your time....
    JN

  • Creative Cloud Desktop App Manager still does not work - HELP?

    Using Windows 7, have Adobe subscription, cannot get the CC desktop Application Manager to work under any circumstances! This is driving me crazy, paying for the subscription, cannot update any programs, because I cannot access anything. I urgently need to finish a job where I have previously used a font I have in my typekit - but of course I cannot access the typekit so cannot get the font - this is urgent.
    Can someone please help - I have uninstalled all reference to Creative Cloud Desktop App, restarted computer, re-installed. Nothing, uninstalled everything - changed OOBE folders in both locations to _old, restarted, reinstalled, nothing. Uninstalled again, ran the CC Cleaner Tool, option 3, option1, renamed the OOBE folders, restared Windows, ran exe file again. Failes repeatedly. Comes up with a blank white space, blue wheel spins a few times then stops, and stays like that. If you click in the white space, then it just goes black!!!
    Where to now!

    Creative Cloud chat support (all Creative Cloud customer service issues)
    http://helpx.adobe.com/x-productkb/global/service-ccm.html

  • NFL Mobile App Used Data When Not Open

    I used the NFL Mobile App last night for the first time. I connected to my WIFI thinking it wouldn't use any data. But it did anyway. And then during the night when the app was closed it used a whole lot of data on its own. I have notifications turned off. Why should this be using data when not open? And why should it be using data when on WIFI?

    To have to go to settings, apps, find the app and then force stop is
    a lot of steps just to stop an app. Not really an acceptable solution.
    However, I re-installed the app. Opened it to make sure it worked ok. Made
    sure my WIFI was on during all this. Then went to apps and did a force stop.
    Took several tries to get it to stop for some reason. Later I noticed my phone
    seemed to be using a lot of battery for some reason. Re-booted phone to make
    sure all apps had closed. Went back in and checked the NFL app. It was no
    longer stopped. I force stopped it again. Took several tries. Waited a few minutes
    and checked again. It was no longer stopped. For some reason it won’t stop. So
    I had to un-install it again.
    Not sure why all this is happening with this particular app, but I can’t take the
    chance of inadvertent data or battery usage. So it will remain un-installed until
    someone tells me the problem has been fixed. It’s a shame as since this is one
    of the perks of my Verizon account, I feel I have been slighted. I can’t believe I’m
    the only one having this issue.
    Jim

  • SSO to Web App using Application Integrator - not working (SP15)

    Hi,
    I have created a web app system and generic app integrator iview for my web application (and set up user mapping etc.), following the Application Integrator how-to guide but it does not log me into my web application. I have got the Yahoo example working, and if I use a HTTP System & URL iview for my web application, that also works. Can anyone tell me what the problem could be, or where I should start looking?
    If I use a http sniffer, I can see the correct URL and parameters in the following:
    function requestTargetURL() {
          var theURL = "<b>HTTPS://(myserver)/log-in.htm?op=(####)&pwd=(####)</b>";
          var dsmObj;
          if (hasNestedFrameStructure()) {
            location.replace(theURL);
            dsmObj = parent.EPCM.DSM;
          } else {
            document.body.scroll = "no"; // for IE only
            var theIframe = document.getElementById("iframe_GETRedirect_592312569");
            theIframe.style.visibility = "visible";
            theIframe.src = theURL;
            dsmObj = EPCM.DSM;
            document.title = 'JDS';
        function onloadhandler(){
          setTimeout("requestTargetURL()",1);
    but something else must be happening for it not to work. Can anyone give me any pointers?
    Many thanks
    Jane

    Bit of a weird one: I've found a way to make it work but I'm not sure exactly how... the problem was that the portal was opening my web app URL in an iFrame (which can be seen from the code above). I tested this by just creating a html page with the URL + parameters in an iframe, and it wouldn't log me in (and took over the whole browser). So I guess the problem is with my web app rather than the portal.
    However... I then discovered that if I add my web app address to the Local Intranet security zone in my browser (IE6) settings (before it was in the Trusted Sites zone), it no longer minded being in an iFrame, my test html page worked and so does the portal iview. I cannot find which security setting is causing this - I've tried changing the Trusted Sites to match the Intranet zone settings exactly, but it still doesn't work if my web app address is Trusted opposed to Intranet.
    If anyone has any idea what is causing this behaviour, I'd be very grateful - obviously it isn't a portal issue but I'd still like to find out the cause in case it comes up again in the future.
    Many thanks,
    Jane

  • SSO to Web App using Application Integrator - not working

    Hi,
    I've set up App Integrator for my web application, following the Yahoo example in the guide. My URL template is <System.protocol>://<System.server><System.uri>?<Authentication> and the fraction for user mapping is op=<MappedUser>&pwd=<MappedPassword>.
    It doesn't log me in. Even if I change the URL template to the actual address of my web app and use a real user & password (rather than <Mapped..>), it still doesn't work.
    I've got SSO to my web app working using a HTTP system and URL iview but I would really like to see the App Integrator working as well. Any ideas?
    Many thanks
    Jane

    Can anyone please help with this? I installed a http sniffer so maybe I could see what was going on. My HTTP System simply goes to the URL with the parameters added as expected, but the app integrator one is a bit more complex - I can see the URL & parameters in this function:
        function requestTargetURL() {
          var theURL = "<b>HTTPS://(myserver)/log-in.htm?op=(####)&pwd=(####)</b>";
          var dsmObj;
          if (hasNestedFrameStructure()) {
            location.replace(theURL);
            dsmObj = parent.EPCM.DSM;
          } else {
            document.body.scroll = "no"; // for IE only
            var theIframe = document.getElementById("iframe_GETRedirect_1593748234");
            theIframe.style.visibility = "visible";
            theIframe.src = theURL;
            dsmObj = EPCM.DSM;
            document.title = 'JDS';
        function onloadhandler(){
          setTimeout("requestTargetURL()",1);
    and the server/username/password are all correct but there's a lot of other stuff in there which I'm not sure how affects it. Anyone know have any ideas why this isn't working? Does it matter that my web app is https but the portal is http?
    Any help greatly appreciated!
    Thanks in advance
    Jane

  • Certain apps use battery when not running

    I had noticed on my 3G, and potentially on my 4, that after installing certain apps, the battery goes down much quicker, without using the apps, or even the phone.
    I realise that certain apps do, by the nature of what they do, use more juice, but felt that even when they are not even used?
    2 apps that def sucked the life out of my phone, so i uninstalled where:
    the trainline app
    and
    Nextbuses app
    both in the UK. Can't explain why.
    Any one else found this? It's a shame since NExtbuses was really handy.

    Yes, When you turn on bluetooth you fire up another radio. That radio periodically searches for things to connect to. If you turn it off, your battery will last longer. Not sure if you'll notice the difference. I had a Motorola phone which could go an extra full day or two with Bluetooth off.
    If you use bluetooth, as I do, to automatically connect to your car when you get in, shutting it off is not a convenient option. If you rarely use it, then shut it off when not in use.

  • CC desktop app fonts and storage not available

    How do I get these to work?

    nciscyber - obviously you understand this stuff which is wonderful.  Can you please give me the novice explanation of what you just posted?   I have the same issues / screenshots as posted above. 
    SInce I have PS CC shouldn't I be able to save / open files from the CC from inside PS?  I expected to see a "save" option (in addition to my hard drive folders) for my Creative Cloud.  My misunderstanding?   Is this "coming soon"?  Thanks so much.   

  • UI Freeze While Using ANE on iPAD using AIR 3.7 for mobile

    Hi
    am building an iOS app using AIR 3.7 with flex 4.6 builder. We have created our own ANE which will download all the contents of a zip folder ( originally placed on a seperate location using http request ) on ..library/cache directory of the iPAD device.
    We have no issues using the ANE but the problem occurs when downloading process is Going-ON at the back-end , the UI of the app freezes until we got "DownloadComplete", an Event Dispatched after downloading process is complete, response from the ANE.
    I have also read about worker class for multi-threading but i guess it is still not supported for iOS even in AIR 3.9 beta.
    Can anyone suggest a possible way, how can i make my ANE work along with the UI changes.
    I have a release date near this end of the month so please guys help me out !
    thanks in advance.

    com.microsoft.driver.MicrosoftMouseUSB    7.1
    com.microsoft.driver.MicrosoftMouse    7.1
    com.Cycling74.driver.Soundflower    1.6.6
    tc.tctechnologies.driver.PaeFireStudio    4.0.0 14255
    com.microsoft.driver.MicrosoftKeyboardUSB    7.1
    com.microsoft.driver.MicrosoftKeyboard    7.1
    Try removing the Soundflower driver first then restart your Mac.
    If that doesn't help, remove the PaefireStudio software, restart your Mac to test.
    FireStudio Family - How do I Uninstall & Reinstall my FireStudio drivers on a Mac computer?
    Beyond that try a different mouse and keyboard. If that helps, remove the Microsoft drivers.

  • Using the Air Browser inside an Air Desktop App - how to activate webgl?

    Hello,
    I´m using Adobe Air/Flex to build a Desktop App. Inside the App the user should be able to access an Internet Browser. This part is actually working so far.
    BUT:   THE ADOBE AIR BROWSER IS NOT SUPPORTING WEBGL.
    Is there any method to activate the WebGL Support so I could open WebGL-Dependent URLs from Inside my Desktop App?
    Sure, I could tell the User he should Alt+Tab to switch to an WebGL-Compatible Browser, but it would so much better if this all would work from inside my Application.
    Thanks for answering!
    Stefan

    Hi Krazy,
    With the monitor and Bluetooth peripherals connected, when you close the lid the machine will begin the sleep process. The Bluetooth (if set to wake the machine, which it should) when you activate one of the Bluetooth will then wake the machine and you're free to use it normally.
    To answer your last question, you can turn off the machine and leave the setup as is without any problems.

  • Developing Iphone App using Flash Builder and Flex Air Mobile

    I started developing an Iphone app using the trial version of Flash Builder and was pretty impressed with how easy it was, then i hit problems:
    Trying to submit my app, I was getting invalid binary, using google i tracked this down to a change in the Apple App Store meaning that all apps needed to have native iphone 5 support, which meant updating to Air SDK 3.7
    Updating to AIR SDK 3.7 was a nightmare (mainly as a result of my failure to read the small print)
    Once I got SDK 3.7 to  work with flash builder / flex mobile i though i was there.
    However now i can produce a fast build but everytime i try and produce a standard / production build i get strange errors (air 3.8 does the same).
    My Question is - before i actually buy Flash Builder has anybody actually achieved the following:
         Building an Iphone App using:
         Flash Builder 4.7    (running on OSX)
         Flex Mobile 4.6
         Air 3.7
    If so how ?
    cheers
    Toby

    Thanks for your reply, its nice to know its not just me.
    the error i got when submitting to the App store where due to native support for IPHONE 5 which is now mandatory (from May 1st), looking around the internet the common soloution seemed to be upgrading to Air 3.7.
    The strange erorrs on 3.7 revolve around compiling a standard / production build (fast build works fine)
    the error is always the same (snippet shown below):
    Error occurred while packaging the application:
    Undefined symbols for architecture armv7:
      "__ZN7avmplus8Debugger9debugLineEi", referenced from:
          __ZN7avmplus9MethodEnv9debugExitEPNS_13CallStackNodeE in AOTBuildOutput-4.o
          __ZN7avmplus11BaseExecMgr22debugEnterExitWrapperNEPNS_9MethodEnvEiPj in AOTBuildOutput-4.o
    I have completly failed to work out why, but my gut feeling is its something to do with how the mac is compiling the code in standard build and unable to find a library it needs.
    cheers
    Toby

  • IOS app using AS3 not fitting screen dimensions

    I'm building an iOS app using as3 and air to package the app onto my iPhone 6. My issue is that I get a black bar above and below the app, the app itself is not going fullscreen. The stage screen is set to the iPhone 6 screen dimensions.
    I have tried by adding the following launch images into the app folder; [email protected], [email protected], and [email protected] But it's not being displayed properly.
    Does anyone have any fixes for this?

    Hi ericmathew
    iPhone 6 & iPhone6+ require different Launch Images than older phones:
    For Example,
    For iPhone 6 : Default-375w-667h@2x~iphone.png
    And iPhone6+ : Default-414w-736h@3x~iphone.png
    For more details regarding this, check out below article :
    http://blogs.adobe.com/airodynamics/2015/03/09/launch-images-on-ios-with-adobe-air/
    -Tushar,
    Adobe AIR Team

Maybe you are looking for

  • Selecting and copying words from list to textfield

    I am trying to copy words from a list into a text field. I want to be able to select one word at a time, from the list, and have them create a sentence in the text field ie: you build up the sentence one word at a time. I have tried to code this (See

  • Signer Certificate is Different in the message

    Hi All, I am getting the following exception when i receive documents from my TP. I verified that i have the user and trusted certificate in the wallet and that the wallet location is configured in the tip.props. I also could see in the logs that the

  • Cannot download adobe reader.  Have microsoft explorer version 8. pop up screen notes malicious item

    Have Microsoft explorer 8.  pop up screen notes that there is either a malicous item attached to the download or a malfunction with the web site. Will not download for my protection.

  • HP Officejet 4620

    I am wondering how to I connect the printer to my laptop so I can print stuff off from there. I have already connected it to my PC and it works there but not on my laptop.

  • Plz check the report ?

    hi, i writen the report by using bolck alvs  then iam not getting the field value in RS_SELFELD structure so that iam not able to check condition like if rs_selfield-fieldname = 'vbeln'. so that to rectify this is there any other solution plz send wi