Live data from Hacker News

What iOS Can Learn from Unix

blog.inkmobility.com

31–40 of 59 posts

Re: What iOS Can Learn from Unix

#31
post #27
post #9

From a user perspective, intents are more useful and cover almost everything they're talking about. Most people really don't want to think about the how, they just want to share something to Facebook somehow. Having a standard way to just hook the Facebook app for it is what they really need. It is a shame that we can't get more app functionality sharing in place, but really I don't know if we necessarily want to bri…

I am not an Android developer. Is it possible for an application to create a new Intent, and then have another application use it, or can they only be blessed by Google?

It is possible, and even encouraged.

Re: What iOS Can Learn from Unix

#32
post #31
post #27

Earlier quoted context omitted.

I am not an Android developer. Is it possible for an application to create a new Intent, and then have another application use it, or can they only be blessed by Google?

It is possible, and even encouraged.

Thank you.

Re: What iOS Can Learn from Unix

#33

I think that there's more to it than what's mentioned in the article: Todays mobile OSes (and iOS prominently) have been designed as consumer OSes. Now it is becoming apparent that mobile devices are eventually becoming a platform for work (well, "work" might be a bit exaggerated here) and targeted task-fullfilment too. Time to rethink the mobile OS as a whole.

Android does this already. Windows 8 (RT) and Windows Phone do too. The article is only about iOS.

Windows RT does NOT do this.. They have a few very limited APIs for IPC, such as Search.. other than that, it's very tied down. Even so much so that it's impossible to make a universal file browser. You have to declare ahead of time which file extensions your application should be capable of opening

Re: What iOS Can Learn from Unix

#34
post #6
post #5

I've posted this before, but it's relevant to mention AudioBus which is a way to pipe separate music apps together on one iOS device. I've incorporated it into one of my apps and it works really well. According to Michael, it's creator, it uses Mach Ports to communicate between apps. Apple embraced it and included it with GarageBand.

At this point there is JACK, AudioBus, and soon inter-app audio in iOS7.

Apparently AudioBus has already been updated to be interoperable with inter-app audio:

http://createdigitalmusic.com/2013/09/audiobus-for-ios-7-upd...

Re: What iOS Can Learn from Unix

#35

I think that there's more to it than what's mentioned in the article: Todays mobile OSes (and iOS prominently) have been designed as consumer OSes. Now it is becoming apparent that mobile devices are eventually becoming a platform for work (well, "work" might be a bit exaggerated here) and targeted task-fullfilment too. Time to rethink the mobile OS as a whole.

Maybe that's exactly the point - they're consumer OSes. And while Android already does this, with intents, I doubt most consumers are very happy with this feature (if they even know it exists).

You want to do something with an image, for example, and you're greeted with a huge list of apps that all claim to handle images. Not only is it hard to find the app you want, most of the ones in the list have nothing to do with the task you're trying to accomplish. Hardly user friendly behavior.

FWIW, I personally don't really mind the huge list and can find my way around it, but I'm a heavy Unix user that does most of his work in the terminal already. Most consumers are not.

Re: What iOS Can Learn from Unix

#37
Although it's not a true "pipe", the best way to handle data transfer between apps on iOS is to use custom URL schemes. I've done this to pass data and launch another application.

See "communicating with other apps": https://developer.apple.com/library/ios/documentation/iPhone...

In one app framework we built we had a fairly complicated parser and it could handle a pretty wide variety of URL paths and the supplied data. But there in turn lies the problem - each app must have a mechanism to handle the parsing and routing for these URLs.

Re: What iOS Can Learn from Unix

#38
post #35

I think that there's more to it than what's mentioned in the article: Todays mobile OSes (and iOS prominently) have been designed as consumer OSes. Now it is becoming apparent that mobile devices are eventually becoming a platform for work (well, "work" might be a bit exaggerated here) and targeted task-fullfilment too. Time to rethink the mobile OS as a whole.

Maybe that's exactly the point - they're consumer OSes. And while Android already does this, with intents, I doubt most consumers are very happy with this feature (if they even know it exists). You want to do something with an image, for example, and you're greeted with a huge list of apps that all claim to handle images. Not only is it hard to find the app you want, most of the ones in the list have nothing to do wi…

You are right. I can't see this for consumer devices. Also it would do major damage to app-stores, so there is no broader interest in it. And no one would release and maintain an OS dedicated to power users only (there are to few) – it just doesn't scale.

Apple had once an approach to this in the old Classic OS, by a switch that would enable or disable some access and features in the OS (esp. Finder). While this wasn't a great success on the desktop (like any other easy-suites), it might be worth to rethink for the mobile platform.

Re: What iOS Can Learn from Unix

#39
From the footnotes:

> Android has intents which are a big step in the right direction. With a few tweaks to user experience they could solve this problem on the platform.

What tweaks would 'solve this problem'? As far as I can tell, Android intents work flawlessly for transferring content between apps. I can click an attachment on an email, open it in an editor, make changes, and then share that file back on a social network or another email. Each step taking only two taps. The speed of downloading attachments could do with some work in most cases, but that's just a hardware issue and will probably be far faster in another generation or two of hardware.

I have a feeling the author has never really used an Android device much? Or am I missing some key piece missing from intents?

Re: What iOS Can Learn from Unix

#40

Although it's not a true "pipe", the best way to handle data transfer between apps on iOS is to use custom URL schemes. I've done this to pass data and launch another application. See "communicating with other apps": https://developer.apple.com/library/ios/documentation/iPhone... In one app framework we built we had a fairly complicated parser and it could handle a pretty wide variety of URL paths and the supplied da…

This is a good start -- http://x-callback-url.com/ is a standard and listing for apps that support it. The biggest problem is that there is a limited amount of data that you can transfer in a URL (about 80KB I believe) so even large PDFs will start to cause problems.
Post reply on HN