Thread: Flash on Apple Devices Discussion

  1. #46
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Right. And in what language do you think Flash is written on? Flash?
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  2. #47
    Registered User
    Join Date
    Jan 2009
    Posts
    1,485
    Well, I would think that Adobe CS qualifies as:

    intermediary translation or compatibility layer or tool

  3. #48
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    It does. So, you can't use Flash. We agree there, right?

    Now, what part of "you can't use any other third party APIs" from that EULA provision you didn't understand?
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  4. #49
    Registered User
    Join Date
    Jan 2009
    Posts
    1,485
    Yes we agree you can't use flash.

    It says private API's, and apple refers to their own non public apis that way in all their documentation.

  5. #50
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Ok, I'll help you out here, because I actually have nothing better to do:

    (emphasis is mine)
    3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
    You are the first and only person I ever saw, since 3.3.1 was updated a couple of weeks ago, that is saying you can use third-party APIs. Everywhere else in the web, 3.3.1 is very clear. This fact alone should be enough for me to ignore you. But because I think you actually believe in what you are saying, this is just a genuine misinterpretation of 3.3.1, and you are not trying to just be annoying, here's my attempt at elucidating you:

    You cannot use third party APIs.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  6. #51
    Registered User
    Join Date
    Jan 2009
    Posts
    1,485
    Okey but it belongs to the same sentence that states that you should only use the documented apis in the way prescribed by apple, and not any private ie the non documented apis.

    People have used tools like objdump to get a glimpse at the api's that apple use internally, then go ahead and use them in their own applications. This is what the sentence is addressing in the last part. There are entire books written that attempt to document these api's and something known as jail-breaking that is hack that makes this sort of use possible by distributing applications outside of the appstore.

    Edit: having read your link now, it clearly says that the first sentence have always been in the eula, the new added part is what comes after the first sentence. That would imply that it has always been forbidden to use 3rd party api's and that is simply not the case. Game engines like this for example have always been permitted http://www.cocos2d-iphone.org/.
    Last edited by Subsonics; 05-04-2010 at 02:52 PM.

  7. #52
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    O_o

    This is really Mario F. at fault for not highlighting all of the relevant parts of the "EULA". It is the explanation/example of the sentence that forbids third-party API development/use.

    Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited.

    This is the disconcerting part; the part that seems to prevent any third-party API.

    That would imply that it has always been forbidden to use 3rd party api's and that is simply not the case.
    Correct. It is the new part that has raised concerns.

    Soma

  8. #53
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by Subsonics View Post
    That would imply that it has always been forbidden to use 3rd party api's and that is simply not the case. Game engines like this for example have always been permitted cocos2d for iPhone.
    It has always been forbidden indeed. What happened before is that the former version of the EULA wasn't clear enough. So many would go around employing third party APIs (everything really, from full development tools like Unity3D or MonoTouch, to small libraries like CBLAS). What was irritating some developers is that the same libraries would go around being accepted into App Store on some products (usually the ones done by the big players) and others would be rejected (usually the lone wolf programmer).

    Apple made 3.3.1 clear this time around. What some poor saps are now arguing (see MonoTouch homepage, for instance) is that they are either not an abstraction layer or that the finished product ends up compiling to native code (see, Corona). None of which really matter as far as the EULA is concerned; The EULA is clear in limiting the tools and methods upstream, at the development stage. But it's possible that some of these get away with murder. At least, for the big players. The lone wolf will always be screwed, judging by Apple's past record.

    To me, and as a developer, this EULA is exactly the type of thing I wouldn't want anywhere in a platform I intended to develop for. It ties me to the platform instead of the tools I plan to use. It makes cross-development essentially impossible, limiting my product reach. It also chains me into submission by making sure I follow along with the platform SDK. Meaning, if the product or the company flops, or otherwise ceases to become an interesting platform, I'm left out in the dry with no other place to apply what could possible be years of accumulated know-how. And because I had exactly such an experience before (more than 10 years of Visual Basic development and an hefty investment in tools and components suddenly coming to an halt) that I know exactly what I'm talking about; what a sharecropper developer eventually will come to face.

    ...

    As for Flash in particular. This EULA only removes Flash of the equation because Apple decided to not include it in its SDK. Lets be clear about that.

    Contrary to what you seem to think, there was indeed a general knowledge that iPhone was going to support Flash. Maybe your memory is short, I dunno, by I clearly remember when the iPhone first reached the market (heck, just 3 years ago!) and it was said by both companies there was plans to include Flash. Adobe labs worked on it, made announcements, showed work and Apple Store did include Flash applications.

    It just so happens Apple pulled the plug. Like I said in the first post on this thread, I care little for that (given that I don't own, or ever will own, any of the iFarts). But I do comment on this decision in what it has of pernicious to the web as a medium; the fact a company feels they can decide to limit their users access to web content by banning a technology from their devices. If you prefer to ignore this, by all means.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  9. #54
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    To me, and as a developer, this EULA is exactly the type of thing I wouldn't want anywhere in a platform I intended to develop for.
    For me, the "EULA" is only one part of the issue; a truly successful "iPhone" product will essentially require Apple approval. You'd need to get on the list. You'd have to fund development for a product exclusively using their API, but they may decide not to list the product.

    I don't want the success of a product I've spent time and money on to depend on the whims of a single entity.

    Soma

  10. #55
    Registered User
    Join Date
    Jan 2009
    Posts
    1,485
    Quote Originally Posted by Mario F. View Post
    It has always been forbidden indeed. What happened before is that the former version of the EULA wasn't clear enough. So many would go around employing third party APIs (everything really, from full development tools like Unity3D or MonoTouch, to small libraries like CBLAS).
    What was irritating some developers was that some useful functionality in apples private api's was out of reach for them. If you have been following development on the iPhone you would be well aware of this. This new addition to the TOS does not concern 3rd party api's only the type of development tools that would be "middleware", like monotouch or flash for example. Look up at the above link and the comment made about the new "Terms of service" and how that affects their game engine, it doesn't.

    cocos2d and the iPhone SDK 4.0 TOS | cocos2d for iPhone

    Also this particularly engine is used in some of the top selling games in the app store, that should be evidence enough.

    And re, flash, it has never been part of the iphone os, so nothing has changed there. I don't have anything invested in flash, I don't really care.
    Last edited by Subsonics; 05-05-2010 at 07:58 AM.

  11. #56
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by Subsonics View Post
    What was irritating some developers was that some useful functionality in apples private api's was out of reach for them. If you have been following development on the iPhone you would be well aware of this.
    I speak apples, you speak oranges. This is becoming a little annoying. That has nothing to do with the EULA or the discussion at hand. If you think what I say never happened, then I suggest you do some research. It's more link hunting than what I'm inclined to do at this point.


    Look up at the above link and the comment made about the new "Terms of service" and how that affects their game engine, it doesn't.

    cocos2d and the iPhone SDK 4.0 TOS | cocos2d for iPhone
    Frankly, what the good people at Cocos2D has to say about it means nothing until Apple says it themselves. And that is partially the problem with this whole EULA. The decision is ultimately in the hands of Apple. And on a case by case basis.

    In any case Cocos2D is not a good example since it allows developers to move the whole API source code into their projects instead of linking to it at runtime. Which is in fact the way they ought to do it, if they want to make sure they comply to the 3.3.1. And this is what reassures the authors they can use this library. However, were they to link at runtime, and they would be violating 3.3.1. Have no doubt.

    Also this particularly engine is used in some of the top selling games in the app store, that should be evidence enough.
    As Unity3D was (possibly even more). That argument serves no purpose.

    And re, flash, it has never been part of the iphone os, so nothing has changed there. I don't have anything invested in flash, I don't really care.
    Fine. I think there's is nothing left to say about it then. Enjoy your iPhone.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  12. #57
    Registered User
    Join Date
    Jan 2009
    Posts
    1,485
    Quote Originally Posted by Mario F. View Post
    I speak apples, you speak oranges. This is becoming a little annoying. That has nothing to do with the EULA or the discussion at hand. If you think what I say never happened, then I suggest you do some research. It's more link hunting than what I'm inclined to do at this point.
    I think I have been following this more closely than you over the years, since you seems to despise the platform.

    Quote Originally Posted by Mario F. View Post
    Frankly, what the good people at Cocos2D has to say about it means nothing until Apple says it themselves. And that is partially the problem with this whole EULA. The decision is ultimately in the hands of Apple. And on a case by case basis.
    I agree partly about this, but it does mean something since you claim that it has never been permitted. And cocos2d have been used in many applications without ever being the reason to get a rejection from apple. It gives some weight to the meaning of the first sentence in the eula.

    Quote Originally Posted by Mario F. View Post
    In any case Cocos2D is not a good example since it allows developers to move the whole API source code into their projects instead of linking to it at runtime. Which is in fact the way they ought to do it, if they want to make sure they comply to the 3.3.1. And this is what reassures the authors they can use this library. However, were they to link at runtime, and they would be violating 3.3.1. Have no doubt.

    As Unity3D was (possibly even more). That argument serves no purpose.
    In my opinion it is a good example. Think of a reason for apple to prevent this, there is none. What they don't want is a cross-plattform dev tool to establish itself as a defacto standard, in the end controlling what their platform can and can't do. Thereby giving the power of the platform to some third party that they don't control. This is the purpose of the eula, not to prevent developers to gain functionality from api's.

    Quote Originally Posted by Mario F. View Post
    Fine. I think there's is nothing left to say about it then. Enjoy your iPhone.
    I don't have an iPhone actually, but I have nothing against it.

  13. #58
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by Subsonics View Post
    I think I have been following this more closely than you over the years, since you seems to despise the platform.
    Wait, I need to like a platform to follow its progress? You are sorely mistaken if you think I don't know what I'm talking about. It's in fact your arguments that have been constantly failing on this debate.

    Insisting on bringing Proof by Examples like "but cocos2d applications have been accepted", while refusing to match that with "Apple has been deciding on a case by case basis", or even "cocos2d allows you to move the api source code into your application", has been a constant in your argumentation. You adopt the posture that the relevant argument is done by giving examples that match your opinion, without trying to contrast that with those that don't, or, even more meaningful, to the actual reality behind those examples in order to reach a sound conclusion (*).

    Yes, I know a lot more about Apple than you seem to think I do. And I know also about fallacies. And if it worries you I distaste Apple, you should see me bashing on Windows or Linux, the two platforms I use and like. Apple's my sweet teddy bear in comparison.

    EDIT: (*) And let me remind you, the question is whether Apple allows or not third-party APIs in their devices. I say it doesn't. You say it does.
    Last edited by Mario F.; 05-05-2010 at 09:18 AM.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  14. #59
    Registered User
    Join Date
    Jan 2009
    Posts
    1,485
    No, you don't have to like a platform to follow it's progress and I don't question your competence at all in general, not at all. I usually read post you've made and agree on many points. But you seem to miss the discussion about the jail-breaking practice and discussions about apples private api's. I simply assumed that you did not have many apple development centric news feed in your rss stream. Or that you subscribe to any apple development mailing lists. We'll see how this will pan out. It's funny that you say that I have been constantly failing in this debate, for example. Have flash ever been available on iphone os? Nope.

    The eula does not mention 3rd party api's. If it's meaning is to prevent this, wouldn't it be better to simply say so in the terms of use.

    Also I'm not alone in "bringing proofs by example" as you have sprinkled your posts with links in an attempt to give them weight.
    Last edited by Subsonics; 05-05-2010 at 09:26 AM.

Popular pages Recent additions subscribe to a feed