Slashdot Mirror


Apple Relaxes iOS Development Tool Restrictions

An anonymous reader writes "Earlier this year Apple caused major upset among developers by updating the iPhone developer program license with clause 3.3.1. It basically stopped the use of cross-platform compilers, meaning Adobe Flash could not be used to develop an app for the App Store. The move also put into doubt which other development platforms could be used and generally caused a lot of confusion. Apple has just significantly relaxed that policy and allowed for the use of development tools, as long as 'the resulting apps do not download any code.'"

28 of 347 comments (clear)

  1. Problem by Anonymous Coward · · Score: 3, Insightful

    There are still interesting problems in not allowing to download or update any code. With the rise of jailbreaking iPhones and them running unsigned and modified applications (cracked and/or otherwise), there is no way for an anticheat system to update itself. All anticheat systems like Valve's VAC, PunkBuster and Blizzard's Warden rely on downloading updated code from the internet.

    What this means for online iPhone games is that when someone releases a hack for the jailbroken iPhones, their users can completely ruin the games and legit players cannot do anything. And since Apple is a control freak, they check every update to your application slowly and ineffectely. All while the hacking is rampant and ruins everyones game.

    There certainly are need for updating code and Apple needs to remove that clause too. We don't want walled gardens controlled by mega corporations, we want systems we can use the way we want.

    1. Re:Problem by Kjella · · Score: 3, Insightful

      And how is the situation you describe any different than every console? If you live in a signed sandbox, you live on the good graces of the signee. Doesn't seem like that's a dealbreaker to anyone.

      --
      Live today, because you never know what tomorrow brings
    2. Re:Problem by tlhIngan · · Score: 4, Interesting

      There are still interesting problems in not allowing to download or update any code. With the rise of jailbreaking iPhones and them running unsigned and modified applications (cracked and/or otherwise), there is no way for an anticheat system to update itself. All anticheat systems like Valve's VAC, PunkBuster and Blizzard's Warden rely on downloading updated code from the internet.

      What this means for online iPhone games is that when someone releases a hack for the jailbroken iPhones, their users can completely ruin the games and legit players cannot do anything. And since Apple is a control freak, they check every update to your application slowly and ineffectely. All while the hacking is rampant and ruins everyones game.

      There certainly are need for updating code and Apple needs to remove that clause too. We don't want walled gardens controlled by mega corporations, we want systems we can use the way we want.

      Jailbroken and/or pirated apps are easily detected. So easily detected, that Apple doesn't really bother, because apps can do it themselves.

      Firstly, an app downloaded from the App Store has DRM on it, which consists mostly of encrypted portions of the binary. That binary is then signed. On running the app, the kernel loads the app, validates the signature, then in-memory decrypts the binary, and finally runs it.

      A cracked app can't be re-encrypted for a specific device, so they're shipped decrypted. The kernel, however, cannot load unsigned binaries unless a special flag is set to indicate that it's a decrypted binary that's OK.

      An app just needs to check for that flag which exists in its info.plist file. It can do several checks - first, is info.plist in text format (it should be binary XML)? Second, do those keys exist in the file?

      The apps that do the obvious checks are quickly re-patched to disable those checks, but there's nothing to say that an app has to pop up an "I'm pirated!" notice - it can silently report its pirated status to the server, for example, but otherwise run normally. Most crackers don't check, and most pirates won't bother. Even the ones running Firewall IP (a really nice firewall alert). You need someone to actually go and sniff the WiFi transmissions to ensure it's sending the same data to the server. Use SSL and you're golden. (Sure the pirate could disable all network access, but then who cares about single-player cheating?).

      Also, assets are signed as well, so replacing all the textures with transparent ones also have the exact same issue - you have to go and decrypt the binary, make your mods and set the flag. There are also tests for jailbroken phones as well.

      Online multiplayer is not a huge thing on iPhones, iPads and iPod Touches - at least, the ones where you can't do server-side validation of inputs (which you should do anyways). Local multiplayer may be a bigger deal, but there are probably social pressures against that behavior as well.

  2. More importantly by BasilBrush · · Score: 4, Informative

    More importantly, developers will no longer have to second guess the reasons why apps may or may not be accepted. From the statement:

    "In addition, for the first time we are publishing the App Store Review Guidelines to help developers understand how we review submitted apps. We hope it will make us more transparent and help our developers create even more successful apps for the App Store."

    1. Re:More importantly by Sarten-X · · Score: 4, Interesting

      It's to prevent/reduce the lawyer-like arguments. The moment a set of guidelines becomes public, people start trying to find loopholes. Arguments about terminology, implementation, and technicalities ensue. Then the rules get updated to account for what's been argued already, which brings in a new set of loopholes. Soon, a whole new industry springs up around just knowing the rules, and the whole process grinds to an inefficient halt.

      It's much easier to keep guidelines internal, and only release very general suggestions.

      --
      You do not have a moral or legal right to do absolutely anything you want.
  3. Re:browsers by line-bundle · · Score: 3, Informative

    webkit is exempt.

    Written like a true slashdotter who didn't read the article.

  4. Clarification by mr100percent · · Score: 3, Informative

    Let's clarify, since the description isn't that great. Apple will now allow Adobe's Flash to export in iPhone app format

    Also, Apple released their App Store Review Guidelines (PDF). Worth a read.

    1. Re:Clarification by BasilBrush · · Score: 3, Insightful

      I suggest actual developers access that list on Apple's site. It'll change quite often.

  5. Unity by Xest · · Score: 4, Insightful

    This was all about Unity, which basically does exactly what Adobe's Flash packaging tool did for the most part. The Unity game tools have been used to develop some fairly popular iPhone games, and Apple knew it couldn't continue to authorise Unity based apps whilst denying apps created with Adobe's tools without falling foul of competition laws. Similarly, by kicking Unity off too they'd be throwing away from of the iPhone's most popular games.

    So the question now is, does this mean if Adobe tries to release it's tools again that Apple is going to let it, or are they now going to try and find another excuse to deny Adobe access to the platform?

    Apple stood to lose far more if it continued to stand by this policy, and if it stood by the policy whilst letting some apps through it also stood to face the DoJ, so it had to decide one way or the other.

    1. Re:Unity by BasilBrush · · Score: 4, Insightful

      So the question now is, does this mean if Adobe tries to release it's tools again that Apple is going to let it, or are they now going to try and find another excuse to deny Adobe access to the platform?

      That's probably the reason they've released App Review Guidelines at the same time. Apple can probably deny most Flash apps based on other rules that already exist. e.g.
      "Apps that rapidly drain the device's battery or generate excessive heat will be rejected." and
      "Apps must comply with all terms and conditions explained in the Apple iPhone Human Interface Guidelines and the Apple iPad Human Interface Guidelines"

  6. Apple's Statement by amolapacificapaloma · · Score: 5, Interesting

    This is the actual statement by Apple.

    Also, I've read some rumors about the next iLife '11 having a new program for creating iOS apps in a similar way to the Android's AppInventor. This new statement seems a like a pointer in that direction, otherwise they would have a hard time arguing about antitrust issues on the App Store...

    --
    exp(i*pi)+1=0
    1. Re:Apple's Statement by amolapacificapaloma · · Score: 3, Interesting

      All this is highly speculative, but I'd expect it to be like Automator on OS X, and the "apps" not being submitted to the store, but used but executed inside an apple made app. Easy way for power users to scratch their own itches, and a nice mousehole in the walled garden... Pure speculation though.

      --
      exp(i*pi)+1=0
  7. Re:Yea by Tom · · Score: 3, Insightful

    At least they are. We all know companies that'd rather die than admit they were wrong.

    --
    Assorted stuff I do sometimes: Lemuria.org
  8. Re:Yea by Anonymous Coward · · Score: 5, Funny

    It's refreshing to see Apple wrong so many times in a row. Watching them backpedal is amusing.

    When was Apple wrong? Apple was never wrong. Apple knew this was right all along. There is no evidence of the old license. The old license never existed. It is dead now. Apple never endorsed it. It was a lie made by Apple's enemies to discredit Apple's name. Apple is good. Apple would never hurt you. Apple is your friend. Apple is magic. Apple has never backpedaled. Apple is at war with Google. Apple has never been at war with Microsoft. Why do you hate Apple? Apple only wants to help you. You are clearly disturbed. Apple wants to assure you this is not your fault. Please report to your nearest iThoughtCorrection facility. Apple is your friend. Trust in Apple. Apple is your friend.

  9. What's wrong with issuing an update? by SuperKendall · · Score: 3, Informative

    there is no way for an anticheat system to update itself.

    What's to prevent the game maker from simply issuing a software update, and having software issue challenges to each other related to versions before accepting games?

    Online cheating is not as great a problem as with the PC's or consoles.

    It only takes a few seconds to update a new version on the device.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  10. Re:what about writing apps *on* the device by Lunix+Nutcase · · Score: 3, Informative

    That's because the rules against interpreted code are part of the SDK rules not the app approval guidelines.

  11. Re:Flash on android by rjstanford · · Score: 4, Insightful

    But most people wouldn't have blamed Flash - especially if there wasn't an easy example of a non-flash version to point to. They'd have blamed the iPhone. Most people, even most iPhone users, don't read /. or related sites - that's one of the reasons that the iPhone has been a smashing commercial success, you don't need to be a geek to use it (N70, I'm looking at you here). Keeping Flash off the platform was exactly the right business decision to make.

    Even if Adobe would release a version that wasn't a battery killing unstable one - which would be a great start - the usability experience isn't close to being there for multitouch devices. And the iPhone is all about user experience.

    --
    You're special forces then? That's great! I just love your olympics!
  12. Meaningless by Andy+Smith · · Score: 3, Insightful

    Apple seem terribly random and unpredictable. It would be senseless for any developer to begin work on a project that has become permitted by this clause, because tomorrow the terms could change again.

    I'm an Android developer, releasing my first game in the next 4-6 weeks. Then I need to consider whether or not to produce an iPhone version. The decision will only slightly be based on forecasted sales, market share of competing products, and demand for my product. For the most part I will need to decide if I can afford to invest the time developing for a platform that may, at any point, "ban" my product for some obscure reason. (For example, all of my graphics are produced in 3D Studio and rendered as 2D sprites. Suppose Apple takes a dislike to Autodesk...?)

    1. Re:Meaningless by BasilBrush · · Score: 4, Insightful

      (For example, all of my graphics are produced in 3D Studio and rendered as 2D sprites. Suppose Apple takes a dislike to Autodesk...?)

      It's always wise to do a risk analysis before embarking on a new project. Don't forget to factor in the possibility that you'll spend so much time posting ridiculous scenarios to slashdot that you never get round to doing the work.

  13. Because they don't replace contacts by SuperKendall · · Score: 3, Informative

    Sure, so how does Skype get through.

    Because it doesn't duplicte existing functionality. There is no built in VOIP client, and it uses the Apple contacts. GV linked back to Google contacts...

    In fact, how do most apps get around points 2.11-2.13?

    2.11 Apps that duplicate apps already in the App Store may be rejected, particularly if there are many of them

    At this point that might be a problem for some applications but there's always a new idea without many apps in the store.

    2.12 Apps that are not very useful or do not provide any lasting entertainment value may be rejected

    I think you might just be able to work around that by writing an app that is useful or entertaining.

    2.13 Apps that are primarily marketing materials or advertisements will be rejected

    To me that simply repeats point 2.12 since an application that is primarily marketing is also not useful (though I suppose it could be entertaining, and thus possibly accepted).

    I would say the vast majority of apps in the store fall under these points.

    Like what? Very few of the applications I have seen fall under these points, except possibly for point 2.11 - but that's the thing, the avoidance of replication is more a point going forward than it has been (though Apple has been starting to reject some applications in crowded categories).

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  14. Re:What other company even backpedals... by Bigjeff5 · · Score: 3, Insightful

    Are you serious?

    Wow man, you are a true fanboy.

    There are mistakes, and then there is an attitude that the whole world should bow to their wishes. It's only when they realize they don't have quite that much clout that Apple backs down.

    A good company that did not believe customers owed their happiness to the company, developers owed their very existence to the company, would not have locked down the tools in the first place.

    Apple treats its customers as though it's only because of Apple's great kindness that those customers get to use Apple products. They treat their developers like a necessary evil, and it's only by Apple's grace and mercy that developers are permitted to write code for Apple products.

    That's how you get things like the ridiculous hoops needed to write apps for the App store, or the ridiculous policy of no flash when flash is ubiquitous on the internet. That's a "you get what we give you" attitude if there ever was one. The only reason Apple is backpedaling now is because they pushed it too far and received some backlash. That's it. And they are only going to change the policy far enough to reduce the backlash to an acceptable level - they are not going to change their attitude, and if they see an opportunity to lock things down again they will jump on it.

    --
    Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
  15. My favorite new guideline: Don't snitch by mliu · · Score: 4, Informative

    I think this line from the guidelines is pretty funny:
    "If your app is rejected, we have a Review Board that you can appeal to. If you run to the press and trash us, it never helps."

    So basically, don't snitch.

    To the contrary, however, in the past, it seems like running to the press and trashing them can really help get your app approved.

    See, e.g. http://apple.slashdot.org/story/10/04/16/2327219/Bad-PR-Forces-Apple-To-Reconsider-Banning-Mark-Fiores-App

  16. Opening it up will just prove Apples point by grapeape · · Score: 3, Interesting

    After the disaster that has been flash on Andoid so far, perhaps this is just Apples way of saying "see we told you". I expect a plethora of sub-par apps flooding the app store soon, in the end this will probably help HTML5's cause much more than Adobe.

  17. Re:What other company even backpedals... by Dhalka226 · · Score: 3, Insightful

    What's refreshing to see is a company that actually admits it was wrong, how often does that happen?

    I'm trying in vain to find where they admitted they were wrong. All I see is "we listened to our developers," which is nothing more than a nice way of saying "we think this is beginning to hurt our bottom line" and is something MOST companies do if they get to that point.

    Didn't Steve Jobs make a big hullabaloo about how "intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform"[1] when asked about the rule? So is that magically no longer true, or do they just no longer care? Or is it, perhaps, that their transparently self-serving reasoning for instituting the rule in the first place has started to cost them more than it gains?

    The about-face is good, don't get me wrong. But trying to frame it as some sort of benevolence instead of ANOTHER self-serving action to mitigate problems caused by the first is misguided at best.

    Apple wanted to control everything, and thought they had the clout to get it done. Apparently enough developers made them nervous about it that they changed their mind. Good, but hardly some sign of a great corporate system.

    [1] http://www.taoeffect.com/blog/2010/04/steve-jobs-response-on-section-3-3-1/

  18. Re:Yea by 0xdeadbeef · · Score: 5, Insightful

    We all know companies that'd rather die than admit they were wrong.

    Yes, Apple. Does this sound like a mea culpa?

    The App Store is perhaps the most important milestone in the history of mobile software. Working together with our developers, we will continue to surprise and delight our users with innovative mobile apps.

    They didn't admit that their critics were right, the said that they "listened to their developers". As one of those developers, I assure you that what they really listened to was negative press and Android's rising numbers.

  19. Re:What the...I don't...I..I'm flabbergasted by sglewis100 · · Score: 3, Informative

    Also, you say, "That's why I prefer to work with iOS development, because they do listen to developers and take into account feedback or concerns, and really change fundamental policy instead of continuing said policy just because it exists as so many other companies would do..." Has there been any fundamental policy shift before today? If not, what were you saying prior to today on why you prefer to work with iOS development?

    They listened to developer demand and introduced an SDK and stopped allowing only HTML5 web apps. They allowed turn by turn navigation products. And neither of those were really influenced by the rising success of Android, at the time. I could probably think of a few more, but you asked for "ANY", of which two satisfies.

  20. Re:Yea by thetoadwarrior · · Score: 3, Insightful

    It must upset you that they were spot on about Flash.

  21. Re:Yea by abhi_beckert · · Score: 4, Insightful

    Get off your high horse.

    Just because Apple doesn't carry out the wishes of every individual developer doesn't mean they don't listen. The ENTIRE POINT of the app store is to allow developers to create and distribute great software.

    Do you seriously think apple doesn't give a shit about developers? If that was true, there would be no app store at all.