Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
iCloud Sync support
-
The 1.6 beta version of Pythonista has document picker support, at least on the Pythonista side. That means that you can load/save files from/to iCloud Drive and other apps by calling the appropriate functions, but you cannot access Pythonista's file storage from other apps supporting the document picker. This functionality will be included in the
dialogs
module, which is also coming to Editorial as I understand it. -
It's quite likely that I'll remove document picker support in the next beta. This has less to do with app review concerns than with technical issues that I'm too tired to explain right now. In general, please don't take any features in a beta version as a guarantee that they'll end up in the final release.
-
But I looove the document picker! Maybe you could label it as “experimental”, like you did with
ctypes
? I haven’t run into any issues, and even Xcode handles it just fine. -
@omz - maybe for iCloud you could do something like taking all the content of each file, and converting it to a
.txt
or some other type of file Apple allows to be sync-ed, and then on the other side convert it back to a.py
? -
@misha_turnbull I'm sorry, but I don't think that would help. I am pretty sure that any set of mechanisms that together enable code distribution is disallowed. Syncing user created content (including code) among the users devices is allowed. It doesn't really have anything to do with file types, extensions or UTI:s.
-
Syncing user created content (including code) among the users devices is allowed
What makes you think that syncing or downloading user-created code is allowed? The rule is about "apps that download code in any way or form", it doesn't distinguish between user-created or not.
-
I love these rules:
2.1 Apps that crash will be rejected 2.2 Apps that exhibit bugs will be rejected
It's a wonder that any app is ever approved :)
-
@omz I could be wrong of course, but it just makes sense for personal content. From the perspective of users, iCloud is a simple feature that automatically makes their personal content available on all their devices, to quote some developer documentation. If a user can enter something into an app on one device, why shouldn't (s)he be able to access it in the same app on another device? After all, (s)he can restore an iCloud backup onto another device. Apple wouldn't gain anything by restricting that to some subset of personal content.
The key here is personal content. The guidelines refers to content created by other users as user generated content, and that is completely different.
The apparent contradiction could be explained in that the app itself doesn't actually do the download over the network (as far as I understand it), it just saves the file in the Ubiquity container and reads it from there (using special APIs, but still). The actual up- and download to sync it across devices is handled in the background by the Ubiquity machinery, somewhat like backups to iCloud are handled behind the app's back.
I believe the way, (shape,) or form wording refers to that the timing, the network protocol, or any encoding, encryption, or obfuscation is irrelevant. Basically, there shouldn't be any surprises for the user in terms of code that the review team couldn't review.
-
@JonB How did Apple’s own apps get approved? What about iOS itself? ;-D
-
@Gerzer, interestingly enough Safari would theoretically violate many of the app guidelines. Mostly those regarding crashes/bugs, downloading and running code, performing purchases without Apple's IAP system, and all the restrictions about adult and illegal content. ("Apps that include games of Russian roulette will be rejected." Who came up these guidelines?) Thankfully Apple doesn't actually enforce these for internet content appearing in web views, otherwise it would be almost impossible to use web views at all. ;)