Mobile

Labels
AJAX(112) App Studio(9) Apple(1) Application Builder(245) Application Factory(207) ASP.NET(95) ASP.NET 3.5(45) ASP.NET Code Generator(72) ASP.NET Membership(28) Azure(18) Barcode(2) Barcodes(3) BLOB(18) Business Rules(1) Business Rules/Logic(140) BYOD(13) Caching(2) Calendar(5) Charts(29) Cloud(14) Cloud On Time(2) Cloud On Time for Windows 7(2) Code Generator(54) Collaboration(11) command line(1) Conflict Detection(1) Content Management System(12) COT Tools for Excel(26) CRUD(1) Custom Actions(1) Data Aquarium Framework(122) Data Sheet(9) Data Sources(22) Database Lookups(50) Deployment(22) Designer(178) Device(1) DotNetNuke(12) EASE(20) Email(6) Features(101) Firebird(1) Form Builder(14) Globalization and Localization(6) How To(1) Hypermedia(2) Inline Editing(1) Installation(5) JavaScript(20) Kiosk(1) Low Code(3) Mac(1) Many-To-Many(4) Maps(6) Master/Detail(36) Microservices(4) Mobile(63) Mode Builder(3) Model Builder(3) MySQL(10) Native Apps(5) News(18) OAuth(9) OAuth Scopes(1) OAuth2(13) Offline(20) Offline Apps(4) Offline Sync(5) Oracle(11) PKCE(2) Postgre SQL(1) PostgreSQL(2) PWA(2) QR codes(2) Rapid Application Development(5) Reading Pane(2) Release Notes(184) Reports(48) REST(29) RESTful(29) RESTful Workshop(15) RFID tags(1) SaaS(7) Security(81) SharePoint(12) SPA(6) SQL Anywhere(3) SQL Server(26) SSO(1) Stored Procedure(4) Teamwork(15) Tips and Tricks(87) Tools for Excel(3) Touch UI(93) Transactions(5) Tutorials(183) Universal Windows Platform(3) User Interface(338) Video Tutorial(37) Web 2.0(100) Web App Generator(101) Web Application Generator(607) Web Form Builder(40) Web.Config(9) Workflow(28)
Archive
Blog
Mobile
Saturday, January 25, 2014PrintSubscribe
Mobile Responsive Web Design

A mobile application created with Code On Time has a Responsive Web Design. User interface is automatically adjusted for optimal viewing experience on any client device.  Generated applications will run equally well in modern HTML5 browsers of smart phones, tablets, and desktop computers.

Consider the mobile demo built on top of the Northwind database to explore Responsive Web Design in action. The fluid application user interface is shown on Apple iPhone 5, Apple iPad Air, and Google Nexus 7.

iPhone 5

The following screen shot shows iPhone 5 with a list of products. A customer record is selected. The phone numbers of all customer are clearly visible with the business names partially hidden. A label is displayed next to the contact names. Partial address of customers is listed in the the last row of each list item. Context menu and  search icons are visible on the right-hand side of the  toolbar.

Mobile app created with Code On Time displayed in portrait orientation on Apple iPhone 5s.

Change the phone orientation to landscape. A full name of each customer is now visible. An additional label shows next to the contact title. Application toolbar also features two additional icons “Edit” and “Delete”.

Mobile app created with Code On Time displayed in landscape orientation on Apple iPhone 5s.

Tap the selected record or click “Edit” icon on the toolbar and switch to portrait orientation.

The selected record is now displayed in a form view. Labels are positioned on top of field values. Icon “Edit” is displayed on the toolbar next to the “Context Menu”  button.

Form view of a mobile app created with Code On Time displayed in portrait orientation on Apple iPhone 5s.

Click “Edit” button and change orientation of the mobile device to landscape. Labels are now positioned on the left side of the corresponding fields. Two additional icons “OK” and “Delete” are visible on the toolbar.

Form view of a mobile app created with Code On Time displayed in landscape orientation on Apple iPhone 5s.

Action buttons are displayed in the form views with additional shortcuts duplicated on the toolbar. If the text of a button is too long, then the button icon is migrated to the top while the text is displayed at the bottom of a button. You can see this in action in the screen shot of the same mobile app with a Spanish localization.

Form view of a localized mobile app created with Code On Time displayed in portrait orientation on Apple iPhone 5s.

iPad Air

Tablets with ultra-high resolution offer a significantly larger screen as compared to a typical smart phone. Mobile apps created with Code On Time will take a full advantage of the available screen real estate.

The list of customers shown below is much easier to read. The right-hand side of the screen is occupied by a docked sidebar with context actions. Actions “Edit”, “Delete” and “Search” are also duplicated on the toolbar as icons.

Mobile app created with Code On Time displayed in portrait orientation on Apple iPad Air.

Change the device orientation to landscape and observe a two-column list of items. The default mode of “list” presentation in Code On Time mobile apps is called “Cards”. List items are rendered as “cards” as soon as a sufficient screen width is detected.

Mobile app created with Code On Time displayed with docked sidebar in landscape orientation on Apple iPad Air.

If the sidebar is undocked, then a two-column list of cards is displayed in portrait mode as well.

Mobile app created with Code On Time displayed with undocked sidebar in portrait orientation on Apple iPad Air.

Landscape-oriented iPad Air displays three columns of cards when the sidebar is undocked. Numerous action shortcuts are now visible on the toolbar of the mobile app.

Mobile app created with Code On Time displayed with undocked sidebar in landscape orientation on Apple iPad Air.

Users can also enable a “list” mode as an alternative to “cards”.  The following screenshot shows an open context menu with the “List” presentation style selected. The list of customers features labels next to each component of the address (Address, City, Region, etc.).

Mobile app created with Code On Time displayed with undocked sidebar in 'List' mode with portrait orientation on Apple iPad Air.

The form view in this screen shot shows customer data fields with available actions conveniently displayed in the docked sidebar.

Form view of a mobile app created with Code On Time displayed with docked sidebar in portrait orientation on Apple iPad Air.

Undocking of the sidebar will cause some of the available actions to render as actions buttons.

Form view of a mobile app created with Code On Time displayed with undocked sidebar replaced by action buttons in portrait orientation on Apple iPad Air.

Nexus 7

Users of a smaller tablet will also enjoy the benefits of addition screen real state. List of customers displays actions “Edit”, “Delete”, and “Search” next to the “Context Menu” on the toolbar. Data fields are clearly visible in portrait mode.

Mobile app created with Code On Time displayed in portrait orientation on Google Nexus 7.

A sidebar with context actions is displayed in the portrait mode of Nexus 7 tablet.

Mobile app created with Code On Time displayed with docked sidebar in landscape orientation on Google Nexus 7.

Undocking of a sidebar will cause a two-column display of list item “cards” with additional buttons on the toolbar of the mobile app.

Mobile app created with Code On Time displayed with undocked sidebar and two-column list of 'cards' in landscape orientation on Google Nexus 7.

Landscape orientation of a tablet with docked sidebar allows easy access to context actions when editing data in a form view.

Form view of a mobile app created with Code On Time displayed with docked sidebar in landscape orientation on Google Nexus 7.

Context actions are instantly exposed as action buttons when orientation of the mobile device is changed to portrait.

Form view of a mobile app created with Code On Time displayed with action buttons in portrait orientation on Google Nexus 7.

Other Devices

Exactly the same fluid and responsive web design is demonstrated on other types of devices. You can see the app rendered in a desktop version of Internet Explorer 10.

Mobile app created with Code On Time displayed in a desktop version of IE 10.

Code On Time turns development of line-of-business mobile applications in a fast assembly line while offering the same “mobile” style presentation on desktop devices as well. Only one version of the app must be developed while covering a wide range of mobile and desktop devices.

Applications produced with Unlimited edition of the app generator will also feature a dedicated version of the desktop presentation style that may benefit some groups of users as well.

If you are building a mobile app then a “desktop” version of it has already been created. The opposite is also true.

Universal Mobile/Desktop Client of an app created with Code On Time displayed with 'desktop' presentation style in IE 10.

Thursday, December 26, 2013PrintSubscribe
Mobile Database Apps for iPhone/iPad/Android, Visual Studio 2013
Code On Time release 8.0.2.0 introduces an updated Universal Mobile/Desktop Client in the apps created with Premium and Unlimited editions. The new mobile client offers editing capabilities and Responsive Web Design. The same exact app will take a full advantage of the client mobile device and offer the most efficient method of presenting data. Continue reading for full release notes after the screen shots.
See the live mobile demo at http://demo.codeontime.com/northwind/pages/home.aspx?_mobile=true.
These are the screen shots of iPhone 5s with the product list and a single product in an edit form.
Mobile client rendering of a product list in the app created with Code On Time app generator.  Mobile client rendering of an edit form 'editForm1' in the app created with Code On Time app generator.
Modern tablets feature high resolution screens. iPad Air with portrait orientation in shown in the screen shot below with the display of the same product list. List items are wider and a fixed context sidebar is automatically visible on the right-hand side of the screen.
Mobile client rendering of a product list in iPad Air with visible context sidebar in the app created with Code On Time app generator.
This screen shot shows the product list in iPad Air with landscape orientation. The context sidebar has been undocked to offer three columns of list items.
Mobile client rendering of a product list in iPad Air with landscape orientation in the app created with Code OnTime app generator.
Don’t forget that apps created with Unlimited edition also support Desktop client devices. See the desktop version of the demo at http://demo.codeontime.com/northwind/pages/home.aspx?_mobile=false.
Mobile client rendering of a product list in iPad Air with landscape orientation in the app created with Code OnTime app generator.
Application framework automatically detects the type of client device and hooks either mobile or desktop client library to rendered application pages ensuring the most friendly presentation.
The following features and bug fixes are included in this release:
  • Updated mobile client library with full editing capabilities and Responsive Web Design.
     
  • Production release of jQuery Mobile 1.4 is the foundation of the mobile client library.
     
  • Visual Studio 2013 is now supported.
     
  • Windows Azure SDK 2.2. is now supported.
     
  • Client library supports "lookup-details-hidden" tag to hide "arrow" that allows view object details from lookup fields.
     
  • Thumbnails of images are now rendered on transparent background. Previous releases where rendering images with white background and thin gray frame.
     
  • Web.Config.Release and Web.Config.Debug transformations are now supported in Web App Factory and Azure Factory apps.
     
  • Application page builder will prevent creation of duplicate pages and configure the first foreign key field as Filter Source field if multiple FK fields are referencing the same controller.
     
  • Import processor passes the name of the temporary file to ImportProcessorFactory to allow overriding and correction of the submitted import file.
     
  • Import processor will automatically bind records imported into child data views to the primary key of a selected master on any level of hierarchy.
     
  • Thank you Ed Blum for contributing "nl-NL" enhanced localization.
     
  • Method DataViewExtender.AssignFilter will accept an array of values for Include and Exclude filters.
     
  • Removed extraneous ")" from the project build file that was preventing Web App Factory from generating the Login page.
     
  • Spansh style of "a.m./p.m" designator is using "space" in the middle on Window 8.1. The client library will correctly parse time.
     
  • Legacy apps without /project/features/framework/@scriptOnly set to "true" in DataAquiarum.Project.xml file will not try to render Mobile Client.
     
  • Desktop client correctly positions Calendar in all browsers.
     
  • Desktop client correctly processes selected lookup values in FireFox.
     
  • Desktop client does not apply the URL command parameters to object Details when a user clicks on an arrow.
     
  • Removed "x" button in IE10 and above in desktop apps.
Next release is planned for January of 2014. There will be numerous enhancements to the mobile client to further narrow the gap between Desktop and Mobile features. Here is a partial list of things we are working on:
  • Blob upload/download.
  • Confirmation data controllers
  • Multi-field copy and context fields in lookups.
  • Dedicated presentation for Auto Complete, Check Box, and Check Box List lookup styles.
  • Filtering capabilities.
  • Mobile version of Advanced Search Bar.
  • Display of aggregates in context sidebar.
  • “Tabular” display of data lists.
  • Multiple-selection of list items.
  • Conditional visibility of categories and fields.
  • Conditional read-only fields.
  • Calculated fields.
We are also preparing to showcase http://cloudontime.com. We have done tremendous amount of work to bring built-in dynamic page creation, workflows, blogging and support forum capabilities to the apps created with Unlimited edition of Code On Time. Stay tuned.
Friday, October 18, 2013PrintSubscribe
Universal Mobile/Desktop Client, Mobile Factory, Active Directory, Synchronization Service

Code On Time release 8.0.0.0 introduces support for Universal Mobile/Desktop Client. The unique architecture of generated apps allows re-interpreting of the application user interface presentation. The original “Desktop” client library now has a “Mobile” counterpart. Apps created with Unlimited edition will automatically detect a mobile device and render an alternative touch-friendly GUI for the app.

The mobile client library is based on popular jQuery Mobile framework. The current implementation of the library allows read-only access to data. We are finalizing the editing capabilities and expect to have them rolled out by the middle of November 2013. Sorting, filtering, and advanced search will be included in the mobile client in the next couple of weeks.

The new project Mobile Factory allows creating apps with “mobile-only” user interface. This project is available without restrictions in Premium and Unlimited editions. Free and Standard editions allow creating Mobile Factory projects with up to ten tables.

Membership and authentication options have been extended to include Active Directory. Application users can sign-in with the standard fly-over login window or custom login. User identity is authenticated by Active Directory server. User roles are derived from Active Directory groups assigned to the user. This feature is available in Unlimited edition only.

New cloud-based Synchronization Service allows automated synchronization of Project Designer logs to simplify team development. Single users will also benefit from a cloud history of designer logs. Online portal allows management of design revision. The new service is designed to complement existing source control systems, such as Team Foundation Server. The synchronization service is offered at no charge. Organizations interested in hosting their own designer synchronization service may request pricing here.

Unlimited edition now includes SaaS (Software as a Service) support with full user authentication. Code On Time apps can be integrated into external web sites while running side-by-side. Examples will be available in the near future.  We expect to use this model to support the newest version of Microsoft SharePoint and other similar products in the future releases.

This release includes the following features, enhancements, and bug fixes.

  • Web App Factory, Azure Factory, and Web Site Factory support “_mobile” URL parameter. The “true” value will enable mobile GUI on desktop computers. Value “false” can be used to disable mobile GUI on mobile devices when needed. Empty value will delete the cookie.
     
  • Mobile Client displays “Call” context option for the fields tagged as mobile-action-call. Data fields with “Phone” in the name are tagged automatically.
     
  • Mobile Client supports tags mobile-item-heading, mobile-item-desc, mobile-item-label, mobile-item-count, mobile-item-aside, mobile-item-thumb and mobile-item-para to enable easy formatting of grid views presented on mobile devices. By default, the Mobile Client will automatically choose the fields to display based on their Show In Summary flag. Presence of any tag on a data field will override the default behavior.
     
  • New “Device” property of pages supports “Auto”, “Desktop”, and “Mobile” options. The default value is “Auto”. “Desktop” pages are not accessible in the menu or address bar from mobile clients and vice versa. This allows implementing pages that work only on mobile or only on desktop devices.
     
  • The current implementation of Mobile Client is based on jQuery Mobile 1.4 beta.
     
  • Class ApplicationServices implement EnableMobileClient static Boolean property that allows disabling Mobile Client UI. Create a partial class ApplicationServices in a dedicated class file, override method RegisterServices and assign “false” to he EnableMobileClient to disabled mobile client.
     
  • Standard TableOfContents and Welcome user controls include markup of mobile content.
     
  • New JavaScript and CSS versioning system is available in Web App Factory, Web Site Factory, and Azure Factory. File “DataAquarium.Version.xml” is included in the root of the projects. The file stores the application version number. The number starts at zero. It is incremented every time the application is published from the app generator. JavaScript and CSS references are enhanced with a suffix to force seamless re-loading on the client machines after deployment. For example, the suffix of a 7th revision of an app may look as follows in the actual combined script reference:
     
    ”../appservices/combined-8.0.0.7.en-us.js?_mobile”
     
    The  first part “8.0.0” reflects the version of the app generator. The last number “7” if the application revision.
     
  • Data controller service will not create data controller requests if a client is not authenticated by the app.
     
  • App services are exempt from "Authenticated user" requirement imposed by Controller.CreateConfiguration method.
     
  • Desktop Client correctly selects a record in a grid view if the record was created or changed in a modal form.
     
  • Active Directory authentication and groups are supports in Web App Factory, Web Site Factory, and Azure Factory apps created with Unlimited edition.
     
  • Combined script is integrated in Web App Factory, Web Site Factory, and Azure Factory in apps created with Unlimited edition. A single compressed script is returned to the client browser. This improves the download speed of pages. The combined script name accounts for user interface culture, “mobile” flag, and version.
      
  • App generators now supports Azure SDK 2.1
     
  • REST serialization processor correctly serializes Guid values.
     
  • User Controls are correctly opened in Visual Studio when selected in Project Designer.
     
  • Membership bar will detect and clear anchors from the URL when reloading a page.
     
  • Missing “type” attribute on “command” node of a data controller will not cause a runtime error.
     
  • Project Designer will clear contents of "empty" nodes when an empty text is assigned to an element. This eliminates the need to create unnecessary revisions in source control systems.
     
  • Solutions files are not re-generated anymore to allow modifying the solutions contents.
     
  • All projects types will now correctly reload if the source code has been opened in Visual Studio at the time of code generation.
     
  • BLOB Adapter implementation has been enhanced to work better with MySQL databases.
     
  • EASE auditing will correctly work with read-only fields.
     
  • Multiple business rule firing has been corrected. Caused by business rule blacklisting by ID instead of name.
     
  • Method MembershipProvider ResetPassword in custom membership providers has been fixed to support hashed passwordAnswer.
     
  • jQuery 10.2 and jQuery UI 1.10.3, are integrated in the client library.
  • New Watermark property is now available for data fields.
     
  • Fixed Oracle 4.5 projects not correctly hooking up ODP assembly. 
      
  • Desktop Client makes use of jQuery when dealing with various dimension calculations. We are abandoning Ajax Control Toolkit in the future releases.