Occasionally connected apps

36 views
Skip to first unread message

okwui

unread,
Aug 21, 2011, 10:09:38 PM8/21/11
to Canappi
New to this but it looks interesting. How does it manage or specify
local data? How can we build occasionally connected apps that will
sync whenevr there is connection.

jj

unread,
Aug 21, 2011, 11:05:51 PM8/21/11
to Canappi
Hi,

we currently do not have a solution for OCAs. Local storage is done
using user defaults / preferences storage. The code that is generated
by Canappi is 100% open, so you can easily add 3rd party libraries to
deal with this problem.

Maurice

unread,
Sep 1, 2011, 8:41:32 AM9/1/11
to Canappi
Hi,

I have to agree that Canappi looks very interesting, but have the same
problem as okwui. Do you have any suggestion of 3rd party libraries
that would address this syncing problem?

Regards,

Maurice

jj

unread,
Sep 1, 2011, 10:18:00 AM9/1/11
to Canappi
Maurice,

hi, this is definitely a very interesting problem that I'd like to add
to the framework at some point. I was just thinking this morning about
a cache/queue solution I could add easily to the framework. Could you
define your needs more formally? Are you looking for read-only? or
something that looks like database replication? or something in
between where the interactions with the Web Services can be queued and
replayed when the phone is on line again.

There is also this library that I'd like to take a look at:
https://github.com/yfactorial/objectivesync

JJ-
> > > sync whenevr there is connection.- Hide quoted text -
>
> - Show quoted text -

james agada

unread,
Sep 1, 2011, 11:17:52 AM9/1/11
to can...@googlegroups.com
I want a functionality where the data is kept locally in the device
and then synced at defined intervals with a backend.

Sent from my iPhone

Jean-Jacques Dubray

unread,
Sep 1, 2011, 11:54:01 AM9/1/11
to can...@googlegroups.com
James,
 
would it require full data model replication or simply queuing the web service requests and call them when connectivity returns?
 
JJ-

--
Jean-Jacques Dubray
@metapgmr
425-445-4467

james agada

unread,
Sep 1, 2011, 2:37:10 PM9/1/11
to can...@googlegroups.com
One of my planned app is a POS which will be used over GPRS. Because our GPRS is not reliable, we cannot be checking out online or requiring continuous connection. The app will be able to look up prices, items, prices, customer info etc locally while ringing up a sale. Updates to the central server and syncing can happen at intervals and be queued when there is no connection. 

Sent from my iPhone

Jean-Jacques Dubray

unread,
Sep 1, 2011, 5:04:20 PM9/1/11
to can...@googlegroups.com
it looks like objectivesync could help there. For this type of application you need definitely need DB level synch.

How big is your data?

james agada

unread,
Sep 2, 2011, 2:52:08 AM9/2/11
to can...@googlegroups.com
Ok. I will look at objectivesync. But how to integrate into canappi generated platform. 

Sent from my iPhone

Maurice

unread,
Sep 2, 2011, 6:53:18 AM9/2/11
to Canappi
JJ,

Thanks for your reply, and tip about ObjectiveSync - I have to look
into that solution. What I am thinking of is an employee's worklist on
the iphone, that can be updated from the office by a manager. The
worklist should be cached on the iphone (in case there is no
connectivity), and because the worklist could change during the day,
the data on the iphone should be synced when there is a connection
available. So I would say it looks like database replication. What
would be even more great, is sending only the updated stuff from the
server to the iphone. And sending information from the iphone back to
the backend server (does not have to be the same database tables -
that would have all kinds of difficult syncing/merge problems).

I understand that would be a difficult and time-consuming addition to
the framework.

Gr,
Maurice

Jean-Jacques Dubray

unread,
Sep 2, 2011, 7:05:46 AM9/2/11
to can...@googlegroups.com
James, Maurice:

from what I understand Objectivesync could do what you need, let me take a look over the week-end see how hard it would be to integrate it in the platform (that's something I would have to do). You can always integrate it in the generated code.

Do you both have full control over your back-end services, or do you use 3rd party services?

JJ-

Maurice

unread,
Sep 2, 2011, 7:31:52 AM9/2/11
to Canappi
I have full control over my back-end services (currently it is a Java
servlet solution using a MySQL database exposing a REST interface).

james agada

unread,
Sep 2, 2011, 9:29:23 AM9/2/11
to can...@googlegroups.com
I have full control. 

Sent from my iPhone
Reply all
Reply to author
Forward
0 new messages