Smartphone Clients Syncing In The Background?


playontv

Recommended Posts

Does anyone know what the "rules" are to enable iOS and Android phones running the BitTorrect Sync app to receive new files?

 

Must the apps be manually opened, or will the sync happen in the background so that the files are already there the next time I open the app?

 

Does it vary by platform (iOS vs Android vs Windows Phone, etc)?

Link to comment
Share on other sites

@playontv,

 

It varies by platform. Here are brief description of the rules:

 

Android

Sync runs in background. Application must be running. Auto-sleep option allows to shut down the core (to save the power) and load it periodically to perform the sync in background.

 

iOS

Sync runs in background for couple of minutes, there iOS stops it. For now all must be open on the display for sync to happen.

 

WP

Sync does not run in background, app need to be open for sync to get going.

Link to comment
Share on other sites

Well that's disappointing (wrt iOS).   Why is it implemented that way?  It is my understanding that iOS allows silent push notifications to apps that can be woken up to do background downloads of data.

 

See the "Multitasking Enhancements" section here:

 

https://developer.apple.com/library/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS7.html

 

"Apps supporting either the fetch or remote-notification background modes may be launched or moved from the suspended to background state at appropriate times. In the case of the fetchbackground mode, the system uses available information to determine the best time to launch or wake apps. For example, it does so when networking conditions are good or when the device is already awake. You can also send silent push notifications—that is, notifications that do not display alerts or otherwise disturb the user."

 

Why wouldn't BitTorrect Sync on iOS register for this mode so that it could transfer data without user intervention?  Then it truly be a "set it and forget it" usage model.

Link to comment
Share on other sites

Thanks for your reply, but it confused me.  You say you are "looking for a solution", but I just gave you the link to a solution that is newly available in iOS 7.  That solution let's you send silent notifications to an iOS device which allows you to "wake up" the app so that it may proceed with background data transfers/downloads.

 

Why are you still "looking for the solution" given that it already exists and is well documented in the new iOS 7 APIs?

Link to comment
Share on other sites

@playontv

 

Sorry - I just did not want to dive deep in tech details. Our devs are aware of the ability to wake up in the background. Bad thing is that iOS limits the apps running in the background to http protocol only, so we can't connect over random port using torrent protocol - which is vital to actually sync data.

Link to comment
Share on other sites

I see.  Well, standard HTTP would be fine to use over the LAN, no?  That is probably the most common scenario.  Even if the automatic background transfer only worked using HTTP when both client and server were on the same LAN, that would still be a HUGE step in the right direction.  Don't you think?

Link to comment
Share on other sites

Respectfully, I don't think this can be called a "very specific case".  I would argue it is the single most likely/common case.  Think about it.  I have a PC with BitTorrent Sync on it.  I have an iPhone and an iPad.  When a new file appears in my Shared folder on the PC, I just want it to automatically be on my iPhone and iPad the next time I use them, without having to remember to open the BT client on the iOS device so the sync can happen before I leave my home.  I can't imagine a more common case than someone who just wants their data to sync, without constant manual intervention.

 

And, regarding the "massive overhaul", I wasn't suggesting changing the way things are currently done.  Just adding an additional failover method that uses basic/standard background HTTP transfer over the LAN.  The current stuff stays the same.  But when they fail to sync in a timely way, rollover to a new method of transfer.  I don't think that's a massive overhaul.  Just an extension of current capabilities.

Link to comment
Share on other sites

You would not have to implement the actual low level details HTTP protocol.  

 

You get that for free if you implement the Background Transfer Class.  iOS handles the details of the protocol.

 

http://code.tutsplus.com/tutorials/ios-7-sdk-background-transfer-service--mobile-20595

 

The same is true on the server side.  Both PC and Mac have standard HTTP classes that are built into the OS.

Link to comment
Share on other sites

I have mail clients that sync in the background just fine, and I don't believe they're using HTTP. That may be a bit of minutia, though, and the reality is perhaps that regardless of what IS supported, doing Torrent in the background ISN'T. That's too bad, because i'd love my camera roll backup to happen automatically on iOS. 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.