Provenance icon indicating copy to clipboard operation
Provenance copied to clipboard

Game Library Syncing

Open jasarien opened this issue 12 years ago • 113 comments

Sync ROMs, saves, etc…

Possibly using dropbox? Other suggestions?

jasarien avatar Aug 28 '13 11:08 jasarien

I can do Dropbox integration, we used it in nds4ios and it works well. At the moment saving ROMs would be okay, since they're fairly small, but once more emulators are added the space needed for ROMs on Dropbox might increase drastically.

dcvz avatar Sep 26 '13 19:09 dcvz

That'd be cool.

jasarien avatar Sep 26 '13 19:09 jasarien

Would this sync with OpenEmu?

ghost avatar Jan 15 '14 09:01 ghost

No, it would simply be dropbox integration. Unless OpenEmu also integrated Dropbox and you used the same folder they wouldn't sync together.

jasarien avatar Jan 15 '14 09:01 jasarien

Save synching should be fairly easy to do with iCloud document synch, I'll take a look at it when I'm done with the PSX Core.

XeresRazor avatar Mar 24 '15 15:03 XeresRazor

For my 2 cents, I'd prefer Dropbox over iCloud sync since my saves are already saved there (using symbolic links, so it works with OpenEmu) and because my iPad is under a different iCloud ID. (Maybe there's a way to share files between iCloud storage users, but I never use it so I wouldn't know.)

I'm fine if only the saved games are synced. Syncing the ROMs too would take up too much cloud space and I'd feel a bit paranoid having ROMs in the cloud...

Cralex avatar Jun 04 '15 06:06 Cralex

Maybe it could have an option to let you choose what you want to sync? e.g. roms, saved games, configuration, etc.

josejulio avatar Jun 10 '15 16:06 josejulio

I agree with Dropbox syncing. While ROM syncing would be nice, I don't think that's as necessary as save states. Like Cralex, I have symbolic links for my saves with OpenEmu setup, and being able to access my saves across devices would be amazing. It would also be nice to be able to choose which service to use. I would say Dropbox, Box, or iCloud Drive. Maybe Google Drive as well.

ghost avatar Jul 07 '15 03:07 ghost

I setup an integrated web server that allows for bulk copying of ROMs as well as uploading/downloading game saves. Please see pull request here: https://github.com/jasarien/Provenance/pull/81

dantheman213 avatar Jul 25 '15 19:07 dantheman213

This has been discussed, but I think will be more of an issue as people want to use this app on their devices and on the new AppleTV, but we need to accommodate a way to sync game ROM's and game save files so we can just play on any device. I know there has been some discussion about Dropbox, but I wonder if there is any way we can incorporate this? A web server connection is a good stop gap, but I think a full blown sync solution is going to be necessary.

Is there any way we can dissect how GBA4IOS was utilizing Dropbox framework to make it work with ATV and iOS?

jpete24 avatar Sep 22 '15 18:09 jpete24

Dropbox would be fine if it was only iOS we were dealing with. As it stands there is no WebKit, or UIWebView on tvOS, which is a vital component in the completion of OAuth which Dropbox requires in order to be used in 3rd party apps. So we can't use Dropbox with tvOS until there is a usable web component.

jasarien avatar Sep 22 '15 18:09 jasarien

I guess for now the only option is to use the iPad version of Provenance, and then Airplay mirror the screen to the Apple TV, which I guess you can do now....

On Tue, Sep 22, 2015 at 1:07 PM, James Addyman [email protected] wrote:

Dropbox would be fine if it was only iOS we were dealing with. As it stands there is no WebKit, or UIWebView on tvOS, which is a vital component in the completion of OAuth which Dropbox requires in order to be used in 3rd party apps. So we can't use Dropbox with tvOS until there is a usable web component.

— Reply to this email directly or view it on GitHub https://github.com/jasarien/Provenance/issues/1#issuecomment-142367635.

Josh Petersen [email protected] 515-450-7311

jpete24 avatar Sep 22 '15 18:09 jpete24

I tried airplay previously, the latency was too high to be playable.

jasarien avatar Sep 22 '15 18:09 jasarien

Welp that sucks. I guess for now I'll have a set of games I want to play when I'm portable and a set of games that I want play around the house. Does the web server work on TvOS? I guess you could transfer game files and saves around back and forth if needed.

On Tue, Sep 22, 2015 at 1:23 PM, James Addyman [email protected] wrote:

I tried airplay previously, the latency was too high to be playable.

— Reply to this email directly or view it on GitHub https://github.com/jasarien/Provenance/issues/1#issuecomment-142371605.

Josh Petersen [email protected] 515-450-7311

jpete24 avatar Sep 22 '15 18:09 jpete24

Maybe something like this could help? https://github.com/gilbertchen/acrosync-library

josejulio avatar Sep 22 '15 18:09 josejulio

Possibly. I'll have to take some time to have a proper look.

jasarien avatar Sep 22 '15 18:09 jasarien

josejulio's idea look viable. All you need to do is make sure you have a local machine that can be the connection point to sync between ATV and iOS devices.

jpete24 avatar Sep 22 '15 19:09 jpete24

What about iCloud drive?

huntercross avatar Sep 22 '15 19:09 huntercross

We don't know if the AppleTV will have an iCloud Drive app yet. It probably will but not until release.

Provenance can't access iCloud directly because it's not an App Store app.

jasarien avatar Sep 22 '15 20:09 jasarien

We may be able to use CloudKit in development mode though, if not natively, via the REST api.

XeresRazor avatar Sep 22 '15 20:09 XeresRazor

Maybe, wouldn't work if provenance is distributed by iEmulators again, or something.

jasarien avatar Sep 22 '15 20:09 jasarien

Hopefully being able to build and run apps without a developer ID now should help there. Though it does still require you to have a mac.

XeresRazor avatar Sep 22 '15 20:09 XeresRazor

That's what I mean. Building for yourself may allow access to iCloud in dev mode. But if it's distributed via iEmulators (which has been the widest distribution Provenance has had) it won't work because it'll be signed with an Enterprise cert and they don't allow access to iCloud.

Does the non-paid dev account even allow you to create a profile with iCloud entitlements anyway? I don't know if it does or not.

jasarien avatar Sep 22 '15 21:09 jasarien

With the REST API, you shouldn't need developer credentials, you just need to set the app ID up once with valid credentials, and then other apps can access the web API for that App ID. https://developer.apple.com/library/prerelease/ios/documentation/DataManagement/Conceptual/CloutKitWebServicesReference/SettingUpWebServices/SettingUpWebServices.html#//apple_ref/doc/uid/TP40015240-CH24-SW1

XeresRazor avatar Sep 22 '15 21:09 XeresRazor

Yeah I don't think that's going to work :D

Upload URLs are valid for a limited time (15 minutes) and the maximum file size is 15MB.

Unless I'm missing something?

jasarien avatar Sep 22 '15 21:09 jasarien

Might work for cloud saves, and you can always chunk rooms into multiple parts. But yeah, overall we're very limited by not being a store app.

XeresRazor avatar Sep 22 '15 21:09 XeresRazor

I think josejulio's suggestion might be the best to investigate.

jasarien avatar Sep 22 '15 21:09 jasarien

Google drive example - https://github.com/googledrive/ios-quickeditor

Doesn't require oAuth, but does require some config both on the google drive console and setting 2 known secrets

huntercross avatar Sep 22 '15 22:09 huntercross

We need a solution that's as simple as pressing a button in the app or else no-one but us techies is gonna use it.

jasarien avatar Sep 22 '15 22:09 jasarien

Another option that comes to my mind, would be to start a web server, and request the user to move to a browser (on this phone, pc, mac, w/e) and go to http://local.ip.of.apple.tv, from there, do the dropbox login, receive the keys and send to the apple tv (using the same web server). Though is somewhat cumbersome.

josejulio avatar Sep 22 '15 22:09 josejulio