Building a GPS tracking app with Appery.io

Many mobile apps use GPS sensors to track a user’s current location. For example, it could be a ride sharing app, fitness app, or a delivery app. This post shows how to build such an app in Appery.io. The app tracks your current location via  the device’s GPS sensor and stores the location into a database.

This is the app UI:

gps_app_view

 

The GPS location is determined every 15 seconds (you can change the interval). The location is shown in the app and also saved into a cloud database. Because this is a native app (with PhoneGap), the app will continue tracking the location even if in the background or with the phone screen locked.

To try this app, download the app backup and create a new app from it. Keep in mind that you do need to build a binary file and install it on the device for testing.

Now you just need to configure the settings service with the correct database ID. This app uses a pretty simple database; it contains one collection with name Locations. This collection contains one column location with type of Geo point:

gps_app_collection_structure

Open the GPSLocationTracking_settings file and change the database_id to your own.

Once the database ID is changed in the settings file, the application is ready to go.

Let’s take a quick look how the app works:

1. The GPS service starts initially after the Device ready event and runs every 15 seconds.

Here is the JavaScript code:

gps_app_device_ready

2. You can also change how often the GPS will run. To apply a new interval, first stop tracking, and then start it again:

gps_app_new_interval

3. In the case that the GPS fails to determine the location, an error message will be shown:

gps_app_save_failed

4. Every time a new GPS location is retrieved, the location is saved into a cloud database:

gps_app_store_location

This is a starter app that uses the GPS sensor to track your current location. It’s very easy to add more features. For instance, you can add Google Reverse Geocoding service to get the address of a place. Or, you could also show all locations on a map.

If you want more practice, try the Building a mobile app with Google Maps and Geolocation tutorial.

Quickly send push notifications with Appery.io backend services

Push notifications. It is a great way to inform app users about cool offers, important events or any updates. It’s an important feature for enterprise mobile apps. For instance, a sales manager can be instantly notified when an existing customer upgrades his/her plan.  Push notifications are a powerful tool to ensure your message is received and read by the user, even when they are not using your app.

push_notification

Appery.io provides fast and easy way to send the push notifications for both platforms – iOS and Android. Sending can be done in just a few steps:

  1. Enable push notifications in the application settings.
  2. Register the application with Apple or Google services.
  3. Install the app on the device. When it’s done, device information will be automatically added to your predefined devices collection.
  4. Send notifications from the console. That it!

You can send these alerts:

  1. Instantly
  2. Schedule
  3. Deliver in device’s time zone

The first two options, all the users will receive the message simultaneously. For instance, for some users it could be 8 AM, and for other users it could be 1 PM.

In the third case of the device time zone sending, users will receive the notifications in a different time – someone later and someone sooner.

Having all three options — is what makes Appery.io push easy to use, yet very powerful, and customizable.

You are not limited to sending push notifications from the push console. With push REST API, you can enable sending messages from any app.

Want to learn more? Head to our push docs or try the quick start push tutorial.

Test Your Mobile Apps Faster With Appery.io Tester for iOS (and Android)

One of the best ways to test your mobile app is on the device. This is a must if your app uses native (PhoneGap) API such as the Camera or the Barcode scanner. Installing the app on the device after every small update is very time consuming. That’s exactly why we built the Appery.io Tester app. It’s a very simple app that allows you to launch your native app and test any native APIs without needing to install it each time. We had the Android version for some time now and now we have also launched the iOS version.

Install the app on your device:

Install the iOS version.
Install the Android version

Once the app is installed, sign in with the same credentials as you use for https://appery.io and you will see a list of all your apps. Simply select the app you want to launch and start testing! This allows you quicly to test any native APIs used in the app. If you make any changes to the app (in Appery.io builder), simply relaunch the app to get the latest version. It’s that simple.

Appery_io_tester_ios

 

For more information about testing your app, please visit Testing your app in documentation.

Appery.io Adds Salesforce Integration and Much More – Check Out the Details

The latest Appery.io update packs some really awesome updates and features. Check them out here.

Fast

Everything now runs much faster. You will see major speed improvements when you open pages, services or any other editors in the app builder. It’s simply much faster. And, we are not done. We have plans to make the platform a lot more faster. Read the rest of this entry »

Appery.io Upgrades with Custom Server Code, Source Editing in the Cloud, App Versiong and New Salesforce API Plug-ins

We just released a number of really awesome features. Check them out!

Server Code

The new Server Code is being added to Appery.io integrated backend services that already includes a cloud Database and Push Notifications. The Server Code allows to write any custom app business logic using JavaScript without the need to build and maintain server infrastructure. The custom code is instantly exposed via REST API and can be quickly invoked from the app.

Selection_015

Source Code Editing

Ever since we launched Appery.io our users have been asking if the generated app source can be edited without leaving the platform. Now the answer is yes. Any app files can be edited in the cloud without leaving the platform. Simple switch to the Source tab to start using this new features. We are planning to add more features to source editing. For now, once you start editing the source files, the changes will not be reflected in the visual view yet.

Visual editor:

Selection_012

Source code editor for the same page:

Selection_013

App Versioning

Selection_011

Did you ever want to save a particular app version or roll back to a previous working version?? Now you can. We have introduced a new version feature. At any point you can quickly create an app version and continue development. At any point you can quickly roll back to any previous version of your app.

Salesforce API Plug-ins

Selection_016

We made it very simple to build mobile apps with Salesforce API with two new plug-ins:

  • Salesforce Contacts API Sample App
  • Salesforce oAuth API

Both plug-ins take care of connecting to Salesforce via oAuth2 so you can start using the API immediately. . The Contacts API Sample plug-in includes a ready-to-run app that allows viewing, and editing Salesforce contacts. Use the plug-ins to learn how to use Salesforce API or a starting point for your mobile app. View detailed documentation on how to import  and use the plug-ins.

Instant HTML5 Mobile App Hosting with Appery.io

If you are building a mobile web app in Appery.io, you can instantly host the app (give it a URL). Here is how. When you create an app, the default type is Mobile App (hybrid app with Apache Cordova). To host the app, first switch its type to Mobile Web by clicking on Hosting tab:

Selection_212

Click Change project type to mobile web button. You will now be able to use an Appery.io domain (app_name.app.appery.io) or a custom domain that you already registered.

Selection_213

Click Publish and your app will be published on the URL specified in 2-4 minutes. It’s that simple.

New Features: Source View, jQuery Mobile Themes with ThemeRoller, Android Permissions, New Components, and Pointer/Array Data Types in Database

We just added some really cool features to Appery.io Platform. Check them out!

New Source view

As we continue to make Appery.io Platform enterprise-level, just just added a Source view where you can see and open the actual files behind your app. Right now the files are opened as read-only but we are working on allowing you to modify them as well.

source

jQuery Mobile themes

We got all our custom themes back and you can also create new themes using the jQuery Mobile ThemeRoller tool. Simply create your theme in the tool, download and then upload to Appery.io. It’s that simple.

themes

jQuery Mobile ThemeRoller site:

themeroller

Once you create a new theme, select Create New > Theme and upload the theme you created.

Android permissions

You have been asking for this feature and now it’s here. Customize the permissions for your app before building a binary.

permissions

Binary build errors log

You no longer need to email support to find out why the binary build failed. You can now view the error and try to fix it:

buildfailed

New UI components

We added two new jQuery Mobile components, Grouped Buttons and Collapsible Set:

newcomponents

Pointer and Array types in database

On the Backend Services side, we added two new data types to the database: Array and Pointer:

newdatatype

New tutorials and getting help

Don’t forget to check our new tutorials and as always, if you have any questions let us know via email, forum or @apperyio.

 

Get HTML5 App Hosting In Every Plan

When you build an HTML5/jQuery Mobile app in Appery.io, you can instantly host the app. Every plan gets hosting. Yes, even the Free plan.

Simply go to Hosting tab.  You can use app-name.appery.io domain or a complete custom URL if you own a domain.

You can also publish the app right form the builder. If you don’t see that option, go to Hosting tab and convert the app to mobile web type (the default new app comes with PhoneGap. Such app cannot be published as it might be using native device features).

New Video: Instantly Add Cloud Database to Your App with New Database Integration Feature

August Release: Database Integration, File API, Project Backup, and Simplified Project Creation

We just released some really awesome features in Appery.io!

App Builder Database Integration

In early July we launched Appery.io Database where you can store app data. Now we have launched database integration in our app builder. This means you can point to a specific database, select the collection(s) you want to use and automatically generate all the REST services.  To create a services from database, select Create New > Database Services:

Next select the database:

Once the database is selected, you can select the services for which you want to generate REST services.

The first section creates REST services for User management.

The second section lists all the collections you have in current database. You can then select which actions (Create, Delete, etc) you would like to create for a particular collection:

When you click Import selected services button, the following REST services will be generated:

For example opening the service for creating a new message looks like this:

The request and response parameters are also generated.  Here is a screen shot of request parameters to create a new messsage:

Isn’t this awesome?

File API

We continue to add new features to Appery.io Backend Services by adding File API. You can now easily store files in the database. When you open any database, you will see a new Files tab:

Read more about the File API.

Project Export/Import

Our users have been asking for this feature for a long time and it’s now available. You can export and then import a project. To export a project, go to app options page (Export Backup):

To import an app from backup, click From Backup when creating a new app (you get to this screen by clicking More Options link, see next section):

Even easier way to create a new app

Last, but not least, it is now even easier to create a new app. Right from Apps page, enter a new app name and click Create. That’s it.