Mobile vs desktop app

After having gained some familiarity with the jQuery Mobile framework (which is fantastic), it appears as if we would need to maintain 2 versions of the Apex application, one optimized for a desktop browser and another for a mobile device. A homepage would redirect to the appropriate version depending on the device accessing it using some modern detection library like Modernizr
But looking at other technologies like ASP.NET that implement the MVC framework, it looks like there is a way to cleanly separate content from the presentation layer. This is something Apex is unable to do because component templates cannot be changed at run-time.
Maintaining 2 versions of the same Apex application is not something that I am looking forward to. Surely there is some clever way to have your cake and eat it too.
Any ideas? Am I missing something? Thanks

Hello Vikas,
>> I am not sure I concur with your assessment above since presentation in Apex is determined by templates which are fixed for a given application
Presentation is indeed determined by templates, however, template parsing is performed per page request (for simplicity sake I’m ignoring APEX cache). I’m pretty sure you are using conditioned regions. Conditioned regions actually mean that the logic of the page can determine the way it will be rendered. Let’s go back for a moment to the translation mechanism. APEX 4.0 introduced the p_lang parameter, as part of the f?p URL. This parameter instructs the APEX engine in which language to render the first page, before any session state actions has been taken. We can use a similar parameter, e.g. p_media, which will set a built-in substitution string, e.g. APP_MEDIA, that you’ll be able to use to condition your page regions. As a single page can include various regions, each with its own template, you’ll be able to control which region will be the one to displayed – optimized for desktop or optimized to mobile.
The point I’m trying to make is that when APEX saves your logic – report SQL queries, list of items, etc. – it doesn’t saves with it the way these elements are displayed. This information is kept separately. You can easily change the entire application theme without any logic changes; you can transform a classic report to IR, etc.
>> short of designing to the lowest common denominator (mobile), I still don't see how it is possible to have ONE Apex application that would look different on a mobile vs desktop device, see the points in my earlier post.
I believe that we all agree that in some cases you need to design your page differently, according to the target media it’s going to use. For example, I have an application that includes a phonebook. Each phone record has about 30 possible information items. When invoked from a desktop, all the fields are displayed (including, for example, the empty ones). When invoked from a mobile platform, only about, or up to, 8 fields, which contain data, are displayed (BTW, one can claim that this is a pure logic issue and not only presentation issue, as you need to determine which fields are going to be displayed). Anyway, I’m having a single application which includes different pages for different medias. At the time, my options were not as wide as the ones we have with 4.1, and remember that we are only at the beginning of the road.
>> Thanks for your example on apex.oracle.com but I know that Apex allows 100% control over the templates used to render content and 4.1 has some improvements in this area but I am not sure it is germane to this discussion
The point I was trying to make is that even with the current 4.1 version, which doesn’t include official mobile support, the APEX engine is already equipped with (almost) everything we need to generate HTML code that is compatible with JQM demands, and that we can do it on a single page.
>> [On a related note - When Form Items in Table is set to No, I am guessing table-based item layout attributes like Begin on New Line, Rowspan/Colspan would be ignored. So how would item layout in the region be controlled? Using pure CSS techniques like float, clear, etc? I am not a CSS expert, I guess I can't see how the region template and label template interact to produce the desired layout]
You are correct. When Form Items in Table is set to No all the declarative layout fields are void. I updated my demo page to show an example of a region – the second one - where we are using a DIV based layout without any CSS. The third region shows an example of the same region, this time with the use of a very minimal CSS.
DIV based layout is neither declarative nor simple, at least for now. It requires a lot of CSS code, and not in the basic level. Compared with the current table based layout options, which are highly declarative, and can give you quite complex layouts (sub- regions, etc.) we have a very long way to go with the DIV based layout. However, you need to remember that in the mobile arena, layout demand tends to be much simpler.
>> Case in point - Report region since that is the primary component used to display content … even if you build a 100% DIV-based report and region template, I don't know if JQM can use DIVs exclusively to format content. As per the JQM docs, it needs the UL element to provide some semantic meaning to the markup.
You keep getting back to the UL element, and I’m not sure why. I agree that when you need to format lists, this is an important element (which APEX also uses), however, JQM also supports grid layout, which based on DIVs - http://jquerymobile.com/demos/1.0b2/#/demos/1.0b2/docs/content/content-grids.html. I believe this can be used with reports.
As Marc confirmed in one of his threads, much of the ways APEX will support mobile applications will be determined by the JQM technologies and options. For now, and I believe mainly to allow future (relative easy) backward compatibility, the current 4.1 version of the APEX engine includes options to accommodate the most obvious JQM demand. As we all know, the development team is very open to new ideas and suggestions (as the new 4.1 translation mechanism clearly shows) so we can hope that they will consider all options to make our life as developers simpler and easier. I’m sure they are aware, just like us, of the growing trend of mobile development. I’m sure they will devote a lot of thinking to the subject. I never spoke with Joel about that (as you know, Oracle doesn’t publish its future plans and strategies, and I have to respect that), but my impression is that where APEX is concerned, the only thing carved in stone is the use of JQM. Everything else is open.
Regards,
Arie.
♦ Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.
♦ Author of Oracle Application Express 3.2 – The Essentials and More

Similar Messages

  • Sharing PHP Service Call Beetween Mobile and Desktop App

    Hi,
    im building a Mobile Applicatopion using application server side PHP for generating some service call.
    Im tryng to share this service callwith my desktop application version!
    How can i do it?
    Thanks

    http://www.as3gamegears.com/monetization/as3-paypal-api/

  • Include Air ( desktop app ) inside Mobile app permited by Apple / Android?

    Include Air ( desktop app ) inside Mobile app permited by apple / android?
    This is my question....:
    I need a "viewer" app run in a desktop machine... via p2p... ( done and working )
    I will like to include it in my iOS / Android Release, an then by example move it to the documents folder.
    Run iTunes and then copy the file from the shared document folder.
    Is this permited by apple / android / adobe ?
    Thanks....

    just tracing some kind of tests I'm doing.
    A couple of hours ago I left working 2 instances of my Application, leaving alone this computer: one instance is the Mac desktop version and the other one is the Web version. In this case both versions were running on the same computer (an iMac with OS X Mavericks):
    1) the AIR/Mac version have been recompiled yesterday with the new AIR4(.0.0.1619 - AIR 3.8 is used to fall in a equivalent way - no changes)
    2) the Web version have been compiled targeting FP 11.8 and it is running on Chrome browser with PepperFlash NOT disabled (which reports version MAC 13.0.0.80, the latest)
    I left working both the Mac and the Web versions of the Application opened on the pc screen (= not minimized) but kept totally behind some Terminal/ssh windows (= not on OS focus and the system is not asked to update any screen area of the app for sure).
    I came back after about 2 hours and I got the browser version connected&running (but it is not a rule) and I also found the AIR-based Mac version disconnected (uau, usually I found the app disconnected but with the screen freezed at last user look ->) which rapidly reconnects upon my click on the Apple dock icon (bring to front).
    Why these different behaviours? I ask to myself.
    The two versions of the software are TOTALLY the SAME application: except for the first Flash file (a 24kb swf file for the Web version and a 170kb dmg file for the Mac version), basically a platform-dependent loader, both versions loads the same remote swf modules. Of course t is AIR (or my first Flash file?).
    I attach the source code of the Mac version of the [first file] AIR-based application at the following url:
    http://92.63.230.100/others/others/wtstarter_mac.as.txt
    _Adobe_, is it a bug? isn't it?
    mc

  • Converting desktop app to mobile app

    hi i have developed a simple java desktop app for making currency conversions, now i want this to work on my mobile, what are the steps to take to convert it, or do I have to start from scratch? thanks

    I think it'll be easier to start from scratch. Java ME classes, even those with the same package and class names, are not the same as their Java SE big brothers.
    Here's a link to a [J2ME Tutorial|http://today.java.net/pub/a/today/2005/02/09/j2me1.html].
    If you have any Java ME related questions, please post them to the [CLDC and MIDP forum|http://forum.java.sun.com/forum.jspa?forumID=76].
    luck, db

  • I'm an active subscriber for creative cloud photography plan. However, I can not connect with lightroom mobile. On my desktop app or on iPad app I get the message ˜trial expired˜. Please, what is going on?

    I'm an active subscriber for creative cloud photography plan. However, I can not connect with lightroom mobile. On my desktop app or on iPad app I get the message ˜trial expired˜. Please, what is going on? Thanks for the help.

    Does your Cloud subscription properly show on your account page?
    If you have more than one email, are you sure you are using the correct Adobe ID?
    https://www.adobe.com/account.html for subscriptions on your Adobe page
    If yes
    Some general information for a Cloud subscription
    Cloud programs do not use serial numbers... you log in to your paid Cloud account to download & install & activate... you MAY need to log out of the Cloud and restart your computer and log back in to the Cloud for things to work
    Log out of your Cloud account... Restart your computer... Log in to your paid Cloud account
    -Sign in help http://helpx.adobe.com/x-productkb/policy-pricing/account-password-sign-faq.html
    -http://helpx.adobe.com/creative-cloud/kb/sign-in-out-creative-cloud-desktop-app.html
    -http://helpx.adobe.com/x-productkb/policy-pricing/activation-network-issues.html
    -http://helpx.adobe.com/creative-suite/kb/trial--1-launch.html
    -ID help https://helpx.adobe.com/contact.html?step=ZNA_id-signing_stillNeedHelp
    -http://helpx.adobe.com/creative-cloud/kb/license-this-software.html
    If no
    This is an open forum, not Adobe support... you need Adobe staff to help
    Adobe contact information - http://helpx.adobe.com/contact.html
    -Select your product and what you need help with
    -Click on the blue box "Still need help? Contact us"

  • Everytime i go to watch a video on youtube, weather it be the mobile site, desktop version or the app, it always says 'video unavailable on this device' this only started happening in the last few weeks! Can someone help???

    Everytime i go to watch a video on youtube, weather it be the mobile site, desktop version or the app, it always says 'video unavailable on this device' this only started happening in the last few weeks! Can someone help???

    Most YouTube content requires the Flash plugin. Sometimes it's necessary to uninstall then reinstall that plugin.
    Uninstall the Flash plugin then reinstall new >  Troubleshoot Flash Player | Mac OS
    Very important to uninstall the currently installed plugin first.
    Now launch Safari and try a video.
    If you have the ClickToFlash extension installed, that can prevent Flash based video from streaming. It can also be installed as a plugin in /Library/Internet-Plug-Ins.
    And check to see if Safari is running in 32 bit mode. Right or control click the Safari icon in your Applications folder then click Get Info. If the box next to:  Open in 32 bit mode  is selected, deselect, quit then relaunch Safari.
    You may also need to delete the cache associated with Safari .
    Open the Finder. From the Finder menu bar click Go > Go to Folder
    Type or copy/paste:   ~/Library/Caches/com.apple.Safari
    Click Go the move the Cache.db file from the com.apple.Safari folder to the Trash.
    Quit and relaunch Safari. Try a video.

  • What's the difference on StageWebview in Mobile and Desktop AIR apps?

    Hi,
    What's the difference between StageWebView in an AIR mobile and
    AIR desktop app? (AIR 3.9 SDK)
    I have the problem that in a StageWebView related feature is working and on mobile but not on desktop AIR apps.
    The feature lets users login into a website and post to the forum - on mobile it seems that the cookie/session is not found.
    What could be the reason for that?
    Any ideas welcome!

    I would recommend against using useNative = true in Windows, because that means the behaviour and presentation of the page is very unpredictable, since the user can have pretty much any version of IE from 6 to 11 and beyond. That's more than a decade worth of different (and some really old and buggy) versions of Internet Explorer. The embedded WebKit in AIR could use an update (it's a bit old), but it's still a lot better than the wild territory of native IE ;-). I'm glad the AIR team listened to us and in AIR 3.9 they gave us back the option to not use native IE in Windows (in some of the previous versions, such as AIR 3.6, 3.7 and 3.8, only the IE engine was available to StageWebView, which forced me to use AIR 3.5 for Windows versions of my application, since the IE engine provided all sorts of problems).
    Anyway, I don't understand your post very well. First you say "is working and on mobile but not on desktop AIR apps". From that I get that your page is working on mobile but doesn't work properly on desktop, but then you say "on mobile it seems that the cookie/session is not found". That contradicts the other sentence, since now you're saying it doesn't work properly on mobile.
    Which one is true?

  • Debug and release desktop app as mobile

    I built an app in Flash Pro where I could easily export an AIR app for desktop and an Android app.
    I have now moved it to Flash Builder and am not sure how to accomplish this.
    It is currently a Desktop app that bilds a release fine.
    Now, how to get an Android version from it?

    The difference between an AIR application and a browser
    application is very small. Take a look at the Adobe training video
    on this subject.
    http://www.adobe.com/devnet/flex/videotraining/?sdid=DYOCT
    In particular, the last part of day three. It's quite clear
    and you can download the test setup for free. Be careful! I believe
    that the Flex Builder configuration info is out of date, because
    the paths for installation of LCDS have changed. I found a fix.
    My notes, maybe a bit cryptic:
    Make sure when you install LCDS, choose the Tomcat option.
    This will install the server application.
    If you're using the new version LiveCycle Data Services ES
    2.6, you'll have to adjust a few things:
    When you install LCDS, click the Tomcat option and continue
    with the installation.
    Instead of unzipping to C:\lcds\jrun4\servers\default.. use
    this folder to unzip the server.zip file instead to
    C:\lcds\tomcat\webapps\odt
    Original adobe forum post:
    http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?forumid=60&catid=833&threadid =1387349&enterthread=y
    Also, instead of using port 8700, the new version uses 8400.
    1. Start the Server: Programs > LiveCycle Data Services ES
    2.6 > Start LiveCycle Data Services Server. Allow the server to
    start up.
    2. Point your browser to
    http://localhost:8400/ to test
    the start page.
    3. Your URL for this example will be
    http://localhost:8400/odt/
    Flex
    I found that in many places you cannot use $(ENV_VARIABLE)
    successfully.
    Enter the exact string.
    c:/lcds/tomcat/webapps/odt - for the training apps
    Always, instead of /lcds/jrun4/servers/default/odt, use
    /lcds/tomcat/webapps/odt
    Start the data base
    cd c:/lcds/sampledb
    startdb.bat
    LCDS local URL
    http://localhost:8400/odt/adobeODT-debug/AdobeODT.html
    http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?forumid=60&catid=833&threadid =1387349&enterthread=y
    He knew what he was talking about. Thanks to rsadwick.

  • Photoshop is a Desktop App

    I just downloaded Photoshop and other apps to my desktop computer and now I am trying to download to my daughters Ipad Mini, and it is saying that Photoshop is a desktop app and I need to download from my computer.  How do I do that?

    There is no full PS for iPad. You need to buy and install PS mobile from the App Store or another graphics editing tool.
    Mylenium

  • Does Apple still use a checksum hash (or take other steps) to prevent Songbird media player desktop app from opening?

    Hello. I've downloaded and installed Songbird for Mac desktop three times. When I try to open the application its icon briefly appears in the dock, but after several seconds it crashes without opening. My MacPro meets and exceeds the listed software requirements. Any ideas why the app won't open? According to http://www.zdnet.com/blog/open-source/what-might-end-apples-open-source-pass/313 0, "For those unfamiliar with the story, Apple began "protecting" its iTunesDB file (necessary for syncing) with a checksum hash in September 2007. This kept people from using other music programs like Winamp and Songbird, alongside iPod files." That's ancient history now, and Apple does even allow the Songbird mobile app for iPhone. There is no Songbird app in the App Store though, and attempts to open the desktop app file downloaded from Songbird's site result in the problem described.
    Possibility: I have a large iTunes music library - 16K+ songs - would Songbird refuse to open due to potential stability issues with importing a library that size?
    Found a similar issue on the Songbird support boards here: https://getsatisfaction.com/songbird/...
    Based on that info I opened Terminal and entered
    /Applications/Songbird.app/Contents/MacOS/songbird -ProfileManager &
    This opened a small dialog box that allowed me to specify a default user (but would not allow the default user name to be re-named). I was then able to go through several windows and opt to have my iTunes library imported, to have several Songbird apps imported, and to not provide user details. The window then closed, and the Songbird icon again disappeared from the dock. Crash.
    Meanwhile, the Terminal app now displayed
    this.addToLibrary is null in SBPlaylistCommand_AddToLibrary ?!!
    I then entered the original command again, opened the default user box again, but then the default user dialog box closed and again the Songbird icon disappeared from the dock. Crash.
    Attempted to open Songbird from the Applications folder with the same result: the default user box appeared briefly, then closed and the Songbird icon disappeared from the dock. Crash.
    Any other ideas that might help this to open, or does Apple feel threatened and is therefore preventing users from accessing the app?

    In Theory wrote:
    Any other ideas that might help this to open, or does Apple feel threatened and is therefore preventing users from accessing the app?
    Songbird working exactly how it should here under Mountain Lion 10.8.2  Maybe try uninstalling as per manufacturer's instructions and reinstalling most recent version. I would be hesitant to muck around with a non responsive program as such with Terminal before exploring other Troubleshooting Paths such as other Third Party conflicts. Have you installed any anti-virus software? MacKeeper, Little Snitch or similar? Can you post a crash report. That may help further.But definately working as it should here.
    Cheers
    Pete

  • Do not force tablet users to use the Desktop app before it is ready

    Windows 10 is set to launch on July 29. Microsoft is discontinuing Modern Skype on July 7 thus creating the following inconveniences for Windows 8.1 tablet users connected with using the Desktop app: The Desktop app is blurry due to the DPI issuesThe app slides off the screen if the app is maximized and the user scrolls to the end of any listUsers need to use the desktop virtual keyboard which is subpar in numerous aspectsUsers who primarily use the Modern part of Windows 8.1 are forced to use the desktop environmentThere is no way to see any Skype notifications without going to the Desktop which, again, the tablet users don't do very often or don't do at all Every single one of the abovementioned issues isn't minor by any means. We'd understand your decision to make users move to a better app if it was indeed a better app. Please finish the proper Windows 10 integration first (or, at the very least, wait till Windows 10 is released) and then we, the tablet users, would gladly move to a truly better experience.

    Thanks for listening. A) Lenovo ThinkPad 8 tablet - Windows 8.1 x64, 8" 1920x1200 screen mostly in portrait mode with 150% zoom for desktop, equipped with LTE mobile connection (that's why Skype connected standby mode support is essential). B) All issues with the desktop version on tablet have been summarized in the first post. I will repeat them again: true optimization for touch devices - I mostly use the chat window, so no menu nor taskbar visible on main (chat) window.fix basic bugs like erratic scrolling, the sliding off main window when scrolling and missing High DPI awareness supportconnected standby support, start screen and live tile notificationssmooth integration of onscreen keyboard, again Windows Store applications can do that onlyNo desktop application on Windows 8.1 can offer the same level of experience on tablets as the existing Modern Skype (Windows Store) one does. That's why the Windows Store applications have been introduced after all. So the easiest solution for both parties is to not kill the Modern Skype app as it continues to live on Windows RT devices. As for Windows 10 upgrade and getting a new Skype universal app (if any, in the future), it does not seem to be well optimized for tablets yet so it is better to stay with very good Windows 8.1 for a while.

  • Pass parameter to new view in air desktop app

    Hi Guys,
    Have developed a mobile app that uses this code .....
    public function generalList_ChangeHandler(event:IndexChangeEvent):void
    navigator.pushView(Detail, list.selectedItem);
    .... to pass data from a list item that the user clicks to a new view called Detail. 
    This is a very common requirement. ie  Scroll a list, and then click on an item to go to a new view where the
    details about the item selected are rendered.
    ..but, I cannot see how to do this in a classic air desktop app.
    It must be pretty simple but it is not im Tour de Flex and I can't find a solution on the web.
    What would the equivalent code for an air app please?
    Thanks,
    Richard

    Oh, I see.
    Your right if I remember correctly you implemented your own version of a ViewNavigator for your AIR application.
    If you want to use the mobile components in your AIR application you need to add the swc to your project 'mobilecomponents.swc'.
    You do this right click project->propertie, then select Flex Build Path and focus on the Library Path tab. Then click "Add SWC" and browse to 'C:\Program Files (x86)\Adobe\Adobe Flash Builder Burrito\sdks\4.5.0\frameworks\libs\mobile' and select the mobilecomponents.swc.
    That should allow you to leverage the ViewNavigator in your AIR application. However, as your AIR app is not a MoblieApplication you will have to instanciate your own instance of ViewNavigator to use and push views to.
    Hope that helps.
    Greg

  • Servlet to Desktop App

    I have a speecific question...
    I have a mobile device connecting to a servlet, when the mobile device does some action, the action is sent to the servlet.
    I then want the servlet to do some action to the desktop application.
    I want to know is it possible to have the servlet and the desktop app communicate simply?
    They are on the one machine and i want to avoid using the net for them to talk to each other
    Thanks

    Open an URL connection using java.net.URLConnection (and if necessary send the POST request), obtain the response as inputstream and process it.
    There is an URLConnection tutorial available: http://java.sun.com/docs/books/tutorial/networking/urls/readingWriting.html

  • Desktop app store app shows old priced apps

    App store app vs 1.0.2 shows older release date for a specific app with older higher price, where iTunes store has newer vs at lower price! Why doesn't desktop app store app reflect same newest vs's that iTunes does? I checked software updates and there is no updates found.
    (FYI, sending this question via iPhone and from it tried to update to show my desktop OS is now 10.6.8, but that choice is not in drop down list for OS, so added comment)

    Don't get confused:
    the iTunes App Store only has apps that are for Apple Mobile Devices (iPhone; iPod; iPad) running iOS as operating system.
    The Mac App Store (or Desktop App Store as you refered to) only has apps that are for Apple Mac computers running Mac OS X as operating systems.
    These apps are different from each other and not interchangeable.
    Stefan

  • Multi-Factor Authentication desktop app?

    Is there a desktop app (Win 7/8) for authenticating against Azure Multi-Factor?  I've currently got a MFA provider spun up in Azure and the server installed on prem.  We are currently testing with it for two factor authentication to an RDS deployment
    and it seems to work well.  So far I've used both the phone call and text authentication methods and I'm working on getting the mobile app piece to work. 
    We do have some instances though where users my not have dedicated cell phones.  Is there an app that can be installed on the desktop and works with the Azure MFA that will allow them to two factor auth?  Perhaps allowing them to use a known pin
    to generate a one time passcode?
    Thanks

    No, there isn't one. There *might* be one coming with windows 10 and universal apps, but then again, being able to just use an app on the PC you are accessing the resource from kinda negates the whole value of the additional auth Factor.
    MFA is not limited to mobile phones only, use a regular one if needed. Or even an OATH token. Lastly, you can always fallback to the security questions, since you have the MFA server.

Maybe you are looking for

  • Mac Pro (2009) RAID Card - Can't create RAID Set

    Hi Everyone, I have a Mac Pro 4,1 (Model 2009) running Mavericks 10.9.2. with the Apple RAID Card installed. I got 4 new SAS Drives (Dell Toshiba MK2001TRKB) which I'm trying to configure into a single RAID5 set. OS X detects the individual drives an

  • Copying data to an external server during data acquisition

    I need to copy out data to an external server for backup during an extended data acquisition session (days long).  What is the safest data format for this operation that won't corrupt the primary data file?  *.lvm, *.tdm, *.tdms? Thanks 

  • Error: When deploying the DC after adding the web services

    Hi Experts, I was able to add the Webservice sucessfully. I execute the Webservice using the following code Request_ServiceHttpGet_getMaterialInfo Catalogue_Req =  new Request_ServiceHttpGet_getMaterialInfo(); wdContext.nodeRequest_ServiceHttpGet_get

  • Warning message in logs -Bad frontendHostUrl in WorkflowConfig, will return null: no protocol

    Hi All- In my BPM server, I am seeing lot of warning message like below one. Could you please help me understand whats causing these errors and how I can fix this. Warning message :- <Oct 15, 2013 4:33:25 PM IST> <Warning> <oracle.soa.services.workfl

  • OWB pukes on RESULT_CACHE function

    I created a PL/SQL function that uses the result cache - it works well. But when I try to import it into OWB, the tool pukes out the following error: oracle.wh.ui.integrator.oracle.parser.ParseException: Encountered "RESULT_CACHE" at line 2, column 1