Subscribe / Unsubscribe Enewsletters | Login | Register

Pencil Banner

Kinvey boosts enterprise mobile apps

Martin Heller | Sept. 11, 2014
An MBaaS (mobile back end as a service) such as FeedHenry, Kinvey, or Parse is a kind of PaaS (platform as a service) for server-backed mobile applications. Kinvey bills itself as a complete mobile and Web app platform. It has extensive client support, integrates with the major enterprise databases, and offers a back-end data store, a file store, push notifications, mobile analytics, iBeacon support, and the ability to run custom code on the back end.

Kinvey currently supports two classes of integrated services: location services like Google Places and Foursquare, and social services like Facebook Open Graph. That doesn't mean you're restricted to public APIs, but it does mean that you can't use other classes of service, except for the data and auth links we've already discussed.

Push messaging support in Kinvey requires you to perform external configuration in Google Cloud Messaging for Android or Urban Airship for iOS. Once you've done that and connected the service to your Kinvey cloud app, Kinvey takes care of all push messaging requests through its own APIs. Note that push messages will fail in the iOS emulator, but should succeed in real devices and in an Android emulator with the Google API enabled.

Kinvey handles offline data synchronization in a basic way. You can enable sync in your application initialization options and tell Kinvey when your application goes online and offline.

Kinvey.init({

appKey : 'App Key',

appSecret : 'App Secret',

sync : {

enable : true,

online : navigator.onLine // The initial application state.

}

});

// Switch application state when the on- and offline events fire.

$(window).on({

offline : Kinvey.Sync.offline,

online : Kinvey.Sync.online

});

 

Kinvey has an automated control setup for offline data synchronization, in which data is automatically pulled from the cache if the application is offline. If the application is online, data is pulled from the network and stored in the cache. You can turn this off and handle it yourself. You can also set important parameters such as the cache maxAge, which determines when a cached value expires and must be refreshed from the network.

Synchronization of offline data requires care in conflict resolution. Using automated control, your Kinvey app will attempt to synchronize any locally stored data when the device goes online again, but if the server data has also changed you'll have a conflict. You can set your conflict resolution policy to clientAlwaysWins, serverAlwaysWins, or a custom conflict resolution function.

Cloud deployment and management

Kinvey supports deploying on almost any cloud, including private clouds. That includes deploying to HIPAA-compliant facilities and facilities located entirely in the EU. Even Kinvey's multitenant cloud is considered secure enough for most apps, as the company does end-to-end encryption, and companies that use data links can keep their data in databases behind their own firewalls. If you have a Google App Engine server, you can link it to your Kinvey back end.

Authentication can be done internally by Kinvey, or through LDAP or Active Directory in the business and enterprise versions. Kinvey also supports Facebook, Twitter, Google+, and LinkedIn identities through OAuth.

In addition to the collection-level permissions shown in Figure 5, Kinvey supports entity-level permissions, global access control, and reader/writer lists. If you are using Kinvey's User Groups in your app, you can manage group reader/writer permissions.

 

Previous Page  1  2  3  4  Next Page 

Sign up for CIO Asia eNewsletters.