We resume our webinar series with the plan to conduct two webinars a month. The first one is dedicated to the Backendless 2.0 release where you get an overview of the Platform and the new features of the release. Our webinars are interactive and you can ask us any questions.
Join the upcoming free webinar “New Backendless 2.0 Release – Overview and Highlights” and get a detailed look at the new powerful development functionality: geofencing, server-side logging API, node.JS support and API Engine – a powerful API management solution.
The webinar will be useful for mobile app developers of all ranks – from a beginner to a experienced professional – as there will be plenty of tips & tricks to enhance your productivity in mobile application development.
When: Tuesday, June 30, 2015
Time: 12:00pm (CDT) *to convert the start time for the necessary timezone, use World Time Converter
Duration: 1 hour (with Q&A)
Speaker: Mark Piller – CEO/ Founder of Backendless
NOTE: We are using gotowebinar system to conduct an interactive webinar. This service has a strong desktop / Android mobile service for registration Please use your any desktop or Android mobile devices to register for our event.
If you have any questions feel free to leave your comments or email below this post or contact firstname.lastname@example.org with any issues you need to be clarified.
It feels really amazing to begin writing this blog post. We got caught in an unusually long release cycle, spent months iterating over the new features, improvements and bug fixes, but in the end it was well worth it. We did it! Backendless 2.0 is here and the product is as cool and powerful as ever. With this release we made several very firm steps towards establishing the Backendless Platform – a unified system for designing, developing, running and managing backend services.
The release brings four major new features and about a dozen at а smaller scale. All of the new features are distinct differentiators of our product making it the strongest mobile backend as a service offering on the market. So without any further ado, let me introduce the new additions to our feature line up:
In my previous posts I described how a data object may have a related geopoint (or a collection of). One of the benefits of the data-to-geo relationships is search by distance. That means Backendless can search for data objects using the location of the related geopoints. Consider an example from a taxi-reservation system. There may be several cabs-for-hire in the area. Your app needs to locate all available cars within the specified distance from where the customer is located.
The class representing a cab may look like this:
public class Car
public String make;
public String model;
public boolean available;
public GeoPoint location;
In my post yesterday I described how to declare a relationship in a data table schema with a geopoint. Now that you know how to create a table column which contains one or more geo points, I am going to show how to populate it with data.
The Backendless Geservice supports a variety of ways for geopoints. So far we have reviewed how to search for geopoints in a radius or a rectangular area. There is also a partial match geopoint search. In addition to that, Backendless console provides yet another way to search for data – the cross-category search. As the name suggest, this search let’s you run SQL based queries across multiple categories. Enabling that search is very easy:
city in ('AUSTIN', 'DALLAS')
Based on my research of the space we are in Backendless is the only mBaaS platform that lets you use SQL queries when searching for data. The geolocation data managed by Backendless is not an exception. A geopoint may include metadata, which is an arbitrary collection of key/value pairs. Geopoints may be searched for using SQL based queries. A query must be the “where” part of a traditional SQL statement. It can reference the metadata properties as if they are table columns.
The example below uses the sample data which can be installed into any Backendless backend. The data is a collection of geo points representing cities around the world. Each geo point contains metadata with the name of the city. The sample below runs the following SQL query:
In my post from yesterday I demonstrated sample code which shows how to search for Backendless geopoints in a radius. While on the same subject I also wanted to review the API for searching for geopoints in a rectangular area. The API is very similar to the one for search in radius, except the app must define the “view port” or the rectangular area on the map where the search must occur. Consider the example below:
Previously I described what Backendless Geoservice is, how to populate a Backendless backend with sample data and how to run partial match geo searches. In this post I will review the API for searching geopoints in a circular shaped area, or in radius. Searching for geopoints in radius must be confined to a specific geocategory. The API will return geopoints located within specified distance (radius) from a central point, all the points will belong to the specified category. Consider the sample code below:
Backendless supports multiple ways to perform a geopoint search. You can search in radius, a rectangular area and there is a search with an SQL query. Additionally, there is a way to search on partial metadata match. This type of search can be combined with all other aforementioned search types. A partial match search will return geopoints whose metadata matches the values specified in the query for the specified (or greater) number of percent. Consider the sample geodata from the article on how to import geodata from a CSV file. The imported data is rendered as shown below in Backendless console:
Previously I wrote about importing data table schemas, relations and data objects to Backendless with CSV files. The data import feature can also work with the geolocation storage. The process is extremely simple – browse to a CSV file with the geolocation data and let Backendless process it. A file you import may include as many geopoints as you need. For each geopoint you can provide the latitude and longitude coordinates, the categories the data point should belong to and the geopoint metadata. Consider the following example of a geolocation CSV file:
[table “” not found /]
Geolocation CSV files must follow the following structure:
Once Backendless completes the import of the data, it sends an email to the application developer email address with a status report about the import procedure. If all the data is successfully processed, you can see it in the geolocation screen of Backendless console. For example, the data from the table shown above is rendered as: