A Brief Note on Updates to Cordova Versions

We have updated our Cordova versions for iOS 5.0.1 and Android 8.0.0. And we recommend that you update your App Libraries version to the higher version.

Libraries version

Also, for Android platform we highly recommend you use higher minimum and target SDK versionx for modern Android devices.

Android binary

A Quick General Guide to App Management

In this post, we cover some features for app management in Appery.io. Many new Appery.io customers will find the answers to frequently asked questions like:

Can I make sure that my application and data are saved securely?
Is it possible to keep my project/database/server code, etc. for future use?
How can I manage my apps/databases/Server Code/API Express data efficiently?

And who knows—this post might also be helpful for some users that have been with Appery.io for some time already. 🙂

Making Project Backups

So, good news. All of your Appery.io projects can be easily saved. You can create a backup of any existing app and restore it later or even transfer it to another account if necessary.

By making a backup of an app you can save all the created pages with their UI and services, enabled plugins, libraries versions, keys and binaries, themes, JavaScript, CSS, etc. The structure of the application also remains unchanged. Sounds great, doesn’t it?

And all you need to do is to select an app under the Apps tab, go to the General tab and click Backup:

 

 

A new window opens allowing you to select where you would like to save your backup.

IMPORTANT: If you need to create a backup of the database for further use together with your app, you will have to save it separately by exporting its data to JSON or CSV (check below for how to do it) and all of the databases connections will need to be recreated. The same applies to API Express projects and Server Code.

We also recommend saving all custom generated data like Apple provisioning profiles or those involving 3rd party Push notification providers like Firebase Cloud Messaging(FCM) and legacy Google Cloud Messaging (GCM) since it cannot be saved in backups either.

Under the Apps tab, you can also create backups of the plug-ins you have:

 

 

Creating App Versions

It’s a good idea as well to make app versions as you go along during your development so that you can more easily experimenting with your project.

Later, you will be able to go the General tab, scroll down to the Versions section, restore the necessary app version and create another backup if needed.

Working with Databases

Another piece of good news is that you are also free to copy the current database instance as saved version. To create a new database version, under the Databases tab, open the Versions tab and click New Version. The process will be initiated and when the version copy is ready, you will be notified with am “Appery DB operation completed” email signifying that your database version has been successfully created and can be accessed from the Databases list under your Appery.io account:

 

 

Moreover, when you switch to the Settings tab, you will be able to:

  • Rename the database
  • Delete the database
  • Clone the database
  • Export all database data to JSON or CSV.

The last two options can also be used to keep your database safe for future use which is a great option to take into consideration:

 

Managing Server Code Scripts

Working with server codes is organized under the corresponding Server Code tab. Select the code you would like to manage from the Scripts list in your App Builder and select the needed option. This would be Load from file to upload the previously saved or prepared script or Download to save the script for future use:

 

Similarly, you can organize your libraries: under the Server Code tab, scroll down to the Libraries section, select the library, and click Load from file (to upload the previously saved or prepared library) or Download (to save the library for future use):

 

You can also delete or clone Server Code scripts or libraries of your choice. To do this, go to the Server Code tab, open the Settings tab of the needed resource, and select the necessary option:

Exporting API Express backups

Similarly, the Settings tab under the API Express tab provides the option of exporting backups of your selected API Express projects along with the basic options of editing and deleting them:

 

Now, meet the last but not the least great backup feature: with Appery.io, not only creating API Express projects backups is possible: you can easily create a backup of any database connection you might need.

To make use of this feature, scroll down to the Database connections section under the API Express tab, select the connection to be exported, switch to the Settings tab, and click Export backup:

 

 

IMPORTANT: Please be aware that this option allows the creation of database connection backups independently, so, to run correctly, they will have to be recreated and linked to your new project from scratch!

Importing Backups or Saved Data Back

Importing backups and other saved data is even easier. Just select the appropriate tab (Apps, Databases, Server Code, or API Express) and click the green button Create new … In the new window, choose the previously saved backup file to be imported, name it, and hit Create. You will need to wait a bit and then… Congratulations! You’re done!

IMPORTANT: Please be aware that you will need to make backups under the corresponding tabs and import them back under the same tabs.

Check below how to create a new app from backup:

 

When creating a script you can select whether you would like to upload a previously saved file (click Load from file) or use one of the ready-to-go snippets created to simplify the development process (select the snippet you need and click insert to add it to the code). Then, save:

 

 

Now, if you switch to the Plugins tab, you will be able to create scripts from the out-of-the-box plug-ins list. All you need to do is to click import and check the plug-in added to the Scripts list:

 

 

That wasn’t hard, was it? But if it was …

We Are Here to Help

Please remember, if you experience problems with creating backups or saving your data or any other issues with your first (or second or third, etc.) app, you are always welcome to ask for help. Our friendly Appery.io email support (submit your ticket from inside the App Builder by clicking the Get Help button in the upper right corner) and Appery.io forum community are here to assist you. Find more information about how you can get help and advice about other great Appery.io services here.

A Great Platform Update Announcement for August!

In a few weeks, we are planning to roll out a new release with a couple of awesome features for Ionic 4! Code-less features to be exact. We will add an Events panel and a Mapping service. This means that Ionic 4 will be as simple to use in Appery.io as JQM!

 

 

 

Check out our documentation updates and new tutorials soon. Become a part of the most powerful framework, soon to be the most popular.

How to Test Progressive Web Apps on iOS devices.

Starting with iOS version 11.3, Apple shipped basic support for PWA on iPhones and iPads, such as service workers and app manifest files. However, only some of the PWA features are supported right now on iOS. In future iOS updates (version 13.0), we expect much better support of PWA features.

Requirements to Run as a Progressive Web App on iOS

  • Website served fully via HTTPS
  • A Web App Manifest for the website with a name or short_name property
  • Service Worker registered with a fetch event handler
  • Display property set to standalone, fullscreen, and minimal-ui

Using Appery.io, you don’t need to worry about these settings as the Appery.io PWA feature supports all of this “out of the box.” For more information please visit our documentation on the feature.

Steps to Install and Test PWAs on iOS Devices

For iOS devices, PWA currently works only on Safari Browsers. Browsers like Chrome for iOS, Firefox Focus for iOS, Dolphin Ghostery, Opera Mini, and Adblock Browser don’t support PWA at the moment. Here are the steps.

  1. Make sure that you have cleared all browsing data.
  2. Visit the website that you have published using the Appery.io PWA feature.
  3. Tap the Share button (at the browser options menu).
  4. From the options, tap the Add to Home Screen option. You will notice an icon of the website or screenshot of the website added to your device home screen instantly.

    Add to Home Screen

  5. Tap the icon from Home Screen, after which the Progressive Web App of your website will be loaded. (You won’t see the Splash Screen and background color which you set upon Manifest right now, as both are not supported on iOS although we are working on bringing such support to Appery.io PWA on iOS.)
  6. In the PWA navigate through some of the web pages you like, then disconnect the Internet on your iOS device, and then close the web app.
  7. After that tap the web app icon again. You will notice that all the pages that you haven’t viewed will be shown by an Offline page that you set up in the service worker within the PWA App Settings.

There are a few limitations, like limited cache capacity (50MB) on iOS right now, but there’s enough for most sites to at least cache placeholder images along with the necessary HTML, CSS and JavaScript to drive a reasonable offline experience. If you need more storage you can build an intelligent caching system to leverage IndexedDB. This can give you up to 500MB of additional storage, which is available to service workers. Check out our tutorial on how to use IndexedDB in Appery.io.

Learn How Technology Can Improve Healthcare Supply Chains with Appery.io

In the past, each hospital department was in charge of ordering and maintaining its own inventory. This approach was inefficient and costly. In more recent times, a centralized supply chain management approach based on numerous process automations has become more prominent. As a result, technology has started to play an even more prominent role in transport and inventory management as well as in supplier relations. Nowadays, hospitals tend to switch to a dedicated all-in-one inventory system.

Our client, a not-for-profit healthcare network that includes hospitals and other medical divisions, recently introduced an Appery.io-based modern inventory system that consists of Par Counting, Express Issue, and Package Tracking applications:

Par Counting

Making sure that items are always in stock is a critical task for a hospital warehouse. With this application, counting of stock items has become much easier. Scanning with a fast hardware barcode scanner, counting per cart, filtering, sorting and focusing on critical items, and offline automatic synchronization are a few key features in the application.

Express Issue

Express Issue automates issuing products from an inventory while simultaneously decrementing the count of processed inventory and charging the department requesting that product.

Package Tracking

Whether it’s a flower bouquet or a vendor track shipment, each package is supplied with an internal barcode to go through the different workflow stages to the addressee. Also, the tracking application allows fast debiting (via a fast barcode scanner and a portable printer), transparent routing, and digital signing on receiving.

Benefiting from Technology

Thanks to the Appery.io platform support for hybrid apps, these applications require next-to-no modifications to run on both iOS and Android devices as well as in Web browsers. This makes the development price tag much lower.

In addition, Appery.io API Express streamlined Vuetura-supported communication as well as cost-effectively integrating these applications with legacy back-end systems such as PeopleSoft, Active Directory, and other databases. Because of this, both operation and maintenance costs are projected to go down. Moreover, the Appery.io out-of-the box offline synchronization feature saved a lot in infrastructure upgrade cost.

Leading in Digital Transformation

As rising expenses threaten the viability of traditional healthcare distribution methods, this healthcare network continues to show the way in digital transformation with its focus on supply chain fundamentals.

Backend Update

We are constantly working to improve our platform, and now we are pleased to announce that the performance of our backend services will increase significantly with the new update, which will be rolled out into production in a few days. We carefully investigated and integrated GrallVM, just finished version 1.0.0-rc14 Alpha and Beta testing, and now we are ready to present a new version of GrallVM 19.0.0!

Some Useful Tips When Working With PWA

Basic Thesis

PWA works only in SSL secured mode. Therefore you need to use URL to your App only with HTTPS protocol.

All resources in your application should be also set as HTTPS.

In case of using at least one HTTP resource, your app will not be considered as a PWA.

Your app should be published on a custom domain. For this, you need to open your app on the “General”  tab and scroll down to “Hosting” options. There you can set your own domain or a subdomain of “.app.appery.io” to host your app.
Note: every time you have made changes in your App you need to click “Publish” button to make it available on the published domain.

PWA Activation

Open Project -> App settings -> PWA.

Click on the checkbox “Enable PWA publishing” to enable PWA in your Appery.io app.

Set  “Label”, “Short label” and “Description” for your PWA application.

Set at least one type of icon for your PWA app. Please note that only appropriate size .png files are accepted as icons in this interface.

Route handlers (rare case)

This part of PWA options is used to control custom resources loading. There are two ways to load resources. By network and by the cache. There is also a combination of these ways.

You can not control Appery.io builtin resources, you can only control custom resources. Let’s try how it works:

  1. Add an image component to your application.
  2. Use custom URL (not from media manager) for this image. Note, it should be HTTPS, as well as all other resources in your app.
  3. Open PWA settings and set appropriate resource URL and needed network strategy.

How to test PWA:

First, run your App:

  1. Open your browser and load your App by using your custom domain URL.
  2. Open browser debugger (usually, by clicking F12 button).
  3. Navigate to debugger “Application” tab.
  4. Click on “/manifest.json” to check your App current manifest JSON file.
  5. Set other parameters on “Manifest” tab. There should be no any errors and warning.
  6. Navigate to “Service workers” tab.
  7. There should be information about current service worker and its’ state. Like “#5557 activated and is running”. It does mean “Service worker with identifier 5557 installed and currently activated”.

If you need to make changes in your App (change label, add button etc.) you should save changes first.

Then click “Publish” App to publish a new version on the current custom domain. Wait until publishing process will succeed.

Update your App in a previously opened window.

In “debugger->Application->Service workers” you will see the current worker is set an old one. And the new worker is installed but is waiting for something. You will notice there are no changes on the page you have made previously.

To activate new service worker you need to click on “Skip waiting” in the debugger.

Close all tabs which are using this service worker in the browser (usually, all tabs with this URL should be closed).
After this, you need to open a new tab and load application URL here again. Then open debugger on “Application” tab and you will see the new service worker active.

Learn How to Show Information in Ionic Pop-ups

In this post, you will learn how to add information to a pop-up in an Ionic application.

Setting Up the App

To start with, let’s create a new Ionic app.

  1. From the Apps page, click Create new app > Ionic, give it a name, and click Create.
  2. Open Pages and go to Screen1. Under the DESIGN tab, add a Text component to the page, select it, and define its Text property as Username: {{username}}.
  3. Next, drag and drop an Input component to the page and set username as its ng-model.
  4. Add one more component to the Screen1 page, a Button with Text: Edit and ng-clickedit().

   The page UI should look like this:

  1. Now, in the Project view, open the Project > Model tab, create a new model of Object type, and name it Global. Add a string parameter to it named username
  2. Next, add a new variable, name it global, and select Global for Type under the SCOPE tab of the index page: 
  3. After that, switch to the Screen1 page, and under the SCOPE tab, add a new scope function named edit and provide it with the following code where the added global variable in the template of the popup is defined:
    $scope.global.username = $scope.username;
    var $ionicPopup = Apperyio.get("$ionicPopup"); 
    var alertPopup = $ionicPopup.alert({ 
        title: 'Edit username',
        template: '<input type="text" ng-model="global.username"/>',
        scope: $scope,
         buttons: [{
            text: 'OK',
            type: 'button-positive',
            onTap: function() {
                $scope.username = $scope.global.username;
                return;
            }
            
        },
        {
            text: 'Cancel',
            onTap: function(e) {
                return;
            }
        }]});

    Note, that in the code, any title can be provided and any HTML code can be added for template.

And…we are done!

Using the App

Now, to check the app, click Test. In a new window, put in Jane for Username and click Edit. The popup with this username will appear:

To enter a different name, just type it in and confirm by clicking OK. The local variable will be modified and the output can be instantly seen:

BTW: If you are into customizing your UI, here is a piece of good news. You can easily customize the looks of your pop-up:

Ionic 4 Is Coming!

We would like to provide you with information about our May release. We have only one new feature, but what a feature—Ionic 4!


The latest, most powerful version of the popular framework will be available for Appery.io next week. It’s packed with exciting new features that made waiting worthwhile! Appery.io Ionic 4 framework supports the latest Angular version 7 and Cordova 8. It will be released as a beta, because we plan to continue working on it and add new features and components.

Please note that Ionic 3 support will be canceled once the Ionic 4 beta period is finished, but before then you’ll have plenty of opportunity to update your Ionic 3 projects to version 4.

 

New Tutorial on Using IndexedDB to Work with Images Offline

A piece of good news for the users who were interested in combining Login-Registration App and IndexedDB Storage but lacked information on how that can be done practically!

The Appery.io team would like to bring to your attention that a new tutorial has been published that provides step-by-step instructions on building an app that will get user images from the custom Files collection and make them available when the device is in offline mode.

The tutorial describes in details how one can save a set of images from Appery.io Files collection into IndexedDB cache with further making them available to users when the app goes offline.

Besides, it presents the list of functions provided by the IndexedDB Storage plugin which was introduced in Appery.io builder for your convenience:

A very interesting detail: this sample app can be published either as a regular iOS and/or Android app or as a PWA website.

Enjoy your programming with Appery.io!