Apple's prohibition of Flash-built apps in iPhone 4.0 related to multitasking

1356789

Comments

  • Reply 41 of 172
    gotapplegotapple Posts: 115member
    What a load of fanboi BS.
  • Reply 42 of 172
    boogabooga Posts: 1,082member
    Quote:
    Originally Posted by cynhgm View Post


    Wait. Are you telling me that iPhone OS 4.0 throws us back into the times of cooperative multi-tasking? That's quite a few steps in OS architecture. Btw, in the end every binary will be linked against the system libraries (like libc) in order to be able to interface the OS anyway. So clean-up work could always be done at init time of the process.



    No, the iPhone OS is truly pre-emptive. And Apple's designs aren't so awful that they couldn't handle non-ObjC/C/C++ code. It's actually unusual for AppleInsider to claim that Apple would make such an awful design-- they're usually pretty pro-Apple. In reality, threads are threads and processes are processes no matter what language makes the syscalls. There would be absolutely no difference in suspending one versus the other.
  • Reply 43 of 172
    prof. peabodyprof. peabody Posts: 2,860member
    Quote:
    Originally Posted by Booga View Post


    Are you a developer? How many apps do you have for sale in the store? If none, please stop calling me a troll just because I disagree with you!



    XCode isn't bad, but it's also not very good. I work in Java, C#, Objective-C and C on a regular basis, and I'd say that all the Java IDE's are far better than XCode, and Visual Studio is slightly better. You're right that it's free, but you get what you pay for. The real shining star of Apple's dev chain is Interface Builder, but you can't use that for games anyway so that's irrelevent.



    Dude, calm down. I actually refrained from calling you a troll, I just said your status is in doubt because of the troll-ish (unrealistic) statement you made at the end of your post. I didn't argue against your whole post even, just the silly statement at the end which was, in fact, troll-ish.



    If you work in Java, C#, etc. on a regular basis then you are a "serious developer" in the manner of how I was describing it in my retort to your post. The point being, that you will have no real trouble as a result of this decision by Apple. You seemed to be directly implying in your first post that there was some group of developers that were good, but for some reason unable to use the required languages or tools. Who are these people and what are these tools then? obviously they don't include you.



    It was only trying to pass off that troll-ish fantasy of people shunning the iPhone platform (albeit temporarily), because of some ... (not sure if you gave a reason... spite?), that made me reply at all.



    Microsoft "won" against the Mac ten years ago because it did the same things that Apple is doing now. It controlled a nascent platform with a firm hand while simultaneously providing perks, great tools and lots of money in the form of a gigantic new unified market to the developers. To suggest that Apple will fail because it's making the "same mistakes" is just ridiculous IMO.



    Apple is courting developers. Apple is bending over backwards for developers. Apple is giving iPhone developers the best deal they've had in years. I'm merely maintaining that any "developer" that runs away from this deal because they only want to code in Python or Java and can't handle switching to some form of C is being foolish at best.



    If the reason is that they want to code in Flash, then they aren't really even "developers" in my book. I can code in several types of "script" but I don't go around calling myself a "developer" as a result of that minor skill.
  • Reply 44 of 172
    adamiigsadamiigs Posts: 355member
    Quote:
    Originally Posted by Booga View Post


    Speaking as a developer, I'd like to say that I suspect this AI entire article is almost entirely false. If there was a technical limitation Apple could simply state that limitation, not ban all similar technology outright. Games made with Unity3D, business Java apps compiled with gcj, etc., operate at a low level just like native apps.



    It's a business decision, not a technical one.



    As a developer and UI design I totally see apple's point of view, yes it's a business decision, but their business is delivering quality devices with excellent UEX, so what part of that don't you understand? Just curious how you separate the two.
  • Reply 45 of 172
    nasseraenasserae Posts: 3,167member
    Quote:
    Originally Posted by ihxo View Post


    maybe there could a flag for apps to op-out of multitasking.



    Not all apps will multitask. Only those that use specific APIs will multitask. For example, IM apps don't need to multitask and will use Push Notification instead.
  • Reply 46 of 172
    Quote:
    Originally Posted by Booga View Post


    Are you a developer? How many apps do you have for sale in the store? If none, please stop calling me a troll just because I disagree with you!



    XCode isn't bad, but it's also not very good. I work in Java, C#, Objective-C and C on a regular basis, and I'd say that all the Java IDE's are far better than XCode, and Visual Studio is slightly better. You're right that it's free, but you get what you pay for. The real shining star of Apple's dev chain is Interface Builder, but you can't use that for games anyway so that's irrelevent.



    what don't you like about XCode?
  • Reply 47 of 172
    prof. peabodyprof. peabody Posts: 2,860member
    Quote:
    Originally Posted by TroubleStarter View Post


    ... At least, you agree that it seems more like a business decision. About the quality part, it is yet to be reasoned. ...



    I would say that I don't actually know the complete reasons behind the decision and neither does anyone else on the thread here today.



    I would agree that even if it were strictly a business decision it would still make sense and they would still do it, but quality means so much to Apple that I believe that some of the technical reasons figured into it as well.



    Overall, people on forums (and I include myself) tend to have very little inside information and make broad sweeping generalisations. The reality is probably a lot more complex, but for that reason, the idea that the board was sitting around one day and decided to do this just to "screw Adobe over" (as some people seem to be arguing), is unlikely to be true.
  • Reply 48 of 172
    lowededwookielowededwookie Posts: 1,143member
    Quote:
    Originally Posted by PaulSorensen View Post


    This article makes zero sense: there is no reason that Adobe couldn't update it's flash->iPhone compiler to support the new multi-tasking APIs.



    Actually there is a perfect reason why Adobe can't do this... it's because they are talentless hacks that can't even develop a simple plugin that doesn't try to kill your machine through over work. If they can't get that right what makes you think they're going to add proper functionality to their CS suite?



    Why isn't Flash Player using Cocoa and Apple's frameworks on the Mac? If they did then there's no reason Apple would be up in arms over Flash. Don't give me Adobe's crap about them not being able to do hardware decoding of H.264 because if they were using Apple's APIs they would be inheriting this from the underlying frameworks so any "technical limitations" excuse means Flash supporters are no better than what Daniel has written here.



    If Adobe played the game then Apple wouldn't be so against what they're doing but Adobe chooses to do things their own way and it could have disastrous repercussions for the iPhone OS based devices.



    I call truth to this article based on current actions of Adobe... or I should say current inactions of Adobe.
  • Reply 49 of 172
    tawilsontawilson Posts: 484member
    Quote:
    Originally Posted by Glockpop View Post


    So if you "suspect it is false," what's your explanation as to why Apple didn't add the restriction to the existing SDK and churn it out today? If disrupting Adobe was just a business goal, why attach it to iPhone 4.0 and delay things until June?



    The iPhone SDK Agreement is a single document. It's update happened to coincide with the release of iPhone OS 4.0 beta. But it does also apply to 3.2 as well.



    It has to be agreed to so that apps can be submitted to the App Store.
  • Reply 50 of 172
    cgc0202cgc0202 Posts: 624member
    I hope this is true because Apple may run into anti-competitive issues, if it is not. At best, it would have a negative impact on the image of Apple if it turned out the new agreement clause were intended mainly to stiffle competition.



    Quote:
    Originally Posted by Booga View Post


    Speaking as a developer, I'd like to say that I suspect this AI entire article is almost entirely false. If there was a technical limitation Apple could simply state that limitation, not ban all similar technology outright. Games made with Unity3D, business Java apps compiled with gcj, etc., operate at a low level just like native apps.



    Your contention may be correct, but without evidence showing this to be the case, we have no basis for accepting its veracity, except your word. It will be a "believe me..." kind of acceptance of your contention. As a user, with a very old G3 iBook, I experience day-in-day that any site that has too many plug-ins, ads, and all those videos and visuals that many claim here to be based on Flash do freeze my computer, especially when I already have a gazillion applications open. My computer heats up very fast too.



    As a user, why would I want the latter experience? If Apple can find a way to improve my viewing experience, all the better for me. That is my view as a user who simply wanted to use the product for the goals I wanted to accomplish.





    Quote:
    Originally Posted by Booga View Post


    It's a business decision, not a technical one.



    The premise of this statement is dependent on your prior statement. If the previous statement is not true, this is also incorrect.



    I have yet to read an article here or be presented with a controlled experiment: a head-to-head comparison, where one component is changed, and all other variables are held constant to confirm your statement and your allegation.



    From my experience creating websites and using available CMS, templates, modules, plugins and applications from third party sources, the rendering of a site depends so much on the optimization of the scripts, as well as the other components integrated. Just a small tweak, replacement of certain plugins, third-party applications, etc. -- to achieve the same goal -- can make a significant difference in the fast presentation of a website. Google, Yahoo and many other groups have done extensive studies on the topic of optimization of website presentation.



    The same should be true with iPhone OS devices -- iPhone, iPod Touch and iPad; or for that matter any other mobile computing devices.



    CGC
  • Reply 51 of 172
    amdahlamdahl Posts: 100member
    Quote:
    Originally Posted by cynhgm View Post


    Am I the only one who doesn't buy this explanation? Sure, if I wanted to take advantage of the new multi-tasking capabilities I have to use the supported languages because how else would I be able to access those APIs? But if I don't care about that why again does my code have to be written in an approved language?



    I agree with poster above. There is absolutely no technical reason for the ban of code not written in an approved language.



    You're right. I made a comment to ktappe's post in the thread yesterday saying as much. AI, of course, prefers to run with an imaginary concept that has no technical foundation. Maybe Apple PR liked the sound of it?
  • Reply 52 of 172
    lowededwookielowededwookie Posts: 1,143member
    Quote:
    Originally Posted by TroubleStarter View Post


    Please explain why one application failing would be disastrous? As far as I can see, if an application fails, people will blame its authors, not Apple or other companies. And no honest company wants a bad image to their products.



    I can give 128 or 256 reasons. It's about the limited resources.



    The problem with many programmers these days is that they have got used to large amounts of RAM and hard drive space and so when it comes to low resource devices like mobile devices they get stumped on how to do what they're used to doing with such limited resources. Old school programmers who've been doing programming for decades don't really have to worry because they've developed on platforms like Amiga, C64, ZX Spectrum, et al.



    If an app doesn't close down properly it's going to hold onto resources that other apps can't run. In a multitasking environment on a device with only 256MB RAM that's going to cause issues down the track when all the other apps are playing nice and one app decides to rebel. Apple would have thought about this hence the reason they're trying to push XCode which incidentally they've been pushing on the desktop and laptops as was well noted with Photoshop and Office during the move to Intel (hmmm Adobe popped up again just then).
  • Reply 53 of 172
    eldernormeldernorm Posts: 232member
    Quote:
    Originally Posted by Aurchon View Post


    Sometimes patience is important before jumping to conclusions.



    Especially since I just came from reading outlandish comments in the "Adobe Acknowledges That Apple's Flash Prohibition Could Harm Business" thread.



    Check this out too:

    http://theflashblog.com/



    Now I am not saying that Apple may not have other motives or this is the only reason but this sounds like a good reason to me why Apple is limiting the language being used.........



    Yea, I went to theflashblog.com and saw this.... "Comments disabled as I?m not interested in hearing"... and the guy admits that he is paid to be a Flash evanglist...



    Paid promoter, commenting on how his client is good and the rest bad.... Just so funny. :-)



    Just a thought,

    en
  • Reply 54 of 172
    amdahlamdahl Posts: 100member
    Quote:
    Originally Posted by lowededwookie View Post


    The problem with many programmers these days is that they have got used to large amounts of RAM and hard drive space and so when it comes to low resource devices like mobile devices they get stumped on how to do what they're used to doing with such limited resources. Old school programmers who've been doing programming for decades don't really have to worry because they've developed on platforms like Amiga, C64, ZX Spectrum, et al.



    So using Apple tools suddenly makes a bad programmer into a good programmer? Bad code can be written in ANY language. Everybody knows and accepts that. So it isn't the reason for the new restriction. The business advantage it confers on Apple and the harm it does to their competitors is the reason.



    Quote:

    If an app doesn't close down properly it's going to hold onto resources that other apps can't run. In a multitasking environment on a device with only 256MB RAM that's going to cause issues down the track when all the other apps are playing nice and one app decides to rebel. Apple would have thought about this hence the reason they're trying to push XCode which incidentally they've been pushing on the desktop and laptops as was well noted with Photoshop and Office during the move to Intel (hmmm Adobe popped up again just then).



    I wasn't aware that iPhone OS was based on System 7.
  • Reply 55 of 172
    dick applebaumdick applebaum Posts: 12,527member
    Quote:
    Originally Posted by Booga View Post


    Speaking as a developer, I'd like to say that I suspect this AI entire article is almost entirely false. If there was a technical limitation Apple could simply state that limitation, not ban all similar technology outright. Games made with Unity3D, business Java apps compiled with gcj, etc., operate at a low level just like native apps.



    It's a business decision, not a technical one.



    Speaking as another developer, I disagree.



    I have been playing with a complex app I wrote that saves state whenever possible (callbacks).



    But, 4.0 manages to suspend/resume (save and refresh state) more granularly than I do in my app.



    For example, I change a text field (customer name) that is used as the name of the state file, but never leave the field (no textFieldDidEndEditing callback). If I switch apps, the name change is recognized and [my app gets callbacks and] saves state to a new file, then deletes the old file.



    The state file is rather large, containing customer data, shipping data, hundreds of items, etc.



    Later, when I resume the app, the display is exactly as I left it... including the cursor positioned at the end of the customer name field, the kb popup, etc..



    Further, I have yet been able to start enough other apps to force my app to terminate, rather than suspend.



    I have done nothing to my app to implement this (other than state saving whenever needed, initiated by callbacks). I thought it too finicky to save state on every field change...



    Apple's multitasking is, apparently, doing something, as it has made my app perform better than what I wrote!



    The premise of this article, intelligent multitasking, has some validity.



    .
  • Reply 56 of 172
    myapplelovemyapplelove Posts: 1,515member
    Quote:

    Comments disabled as I’m not interested in hearing from the Cupertino Comment SPAM bots.



    What a twat.
  • Reply 57 of 172
    cgc0202cgc0202 Posts: 624member
    Quote:
    Originally Posted by cynhgm View Post


    Am I the only one who doesn't buy this explanation? Sure, if I wanted to take advantage of the new multi-tasking capabilities I have to use the supported languages because how else would I be able to access those APIs? But if I don't care about that why again does my code have to be written in an approved language?





    Let me play the devil's advocate here.



    Let me try to represent what Apple might have in mind, as it creates its consumer-oriented products. The target consumer of Apple products is first and foremost, the average user -- not a techie. It is a for profit company, to profit, it must be able to persuade its average user that its products are good, and they are the best to use. [Cost is a secondary consideration.]



    In the case of iPhone OS mobile computing devices -- iPhone, iPod Touch and now iPad -- Apple realized (more than it ever expected) that third party Apps is critical for the success of its mobile computing devices. This realization does not negate the primary focus of Apple -- to satisfy its target consumers. Further, while Apple wanted to dominate the market, it will not sacrifice quality -- both as a company philosophy as well as a marketing strategy. The latter is the reason why Apple is being copied, even if it is not always the first, and gets a lot of buzz whenever it introduces a new product.



    With the above stated, let's start with the premise that the claim of this Apple Insider's article is indeed correct (I am not yet convinced that it is the case) :



    Using Apple designated APIs and related scripts is critical for optimized multitasking.



    In your statement "... it is the owners that make the decision...." you actually meant, it is the developer that makes the decision...." whether to use the designated APIs or some alternatives, e.g., the new Adobe Flash format. However, "... it is the user (the owner of the iPhone OS device) that will experience the consequence of the decision of the developer..."



    If the non-technical average user (which is most of us) experiences problems with multitasking, or other potential adverse impacts -- slow rendering of application, decreased battery life, etc. ...." who will the average user blame?



    The developer or Apple?



    In reality, when using a number of applications (or scripts within an application), if something goes awry, it is difficult to isolate the problem. And, when operating multiple applications at the same time, identifying the culprit is even more complex.



    In effect therefore, it will be Apple, not the individual developer, that will be blamed by the average user for the overall persformance of the iPhone OS product -- even if the problem(s) might have been instigated by the decision of specific developer(s), as implied by your post.



    If the latter is correct, it follows why Apple has to ensure that it will do as much as possible to improve user experience without completely alienating the developer community.



    However, like Apple, developers more than likely worship the same God. So ...



    CGC
  • Reply 58 of 172
    dick applebaumdick applebaum Posts: 12,527member
    Quote:
    Originally Posted by mstone View Post


    Another question is in light of this new requirement for multitasking, do all of the current Apps need to be upgraded to the new version and do all Apps submitted have to be 4.0 or can people still use their current SDK and choose not to upgrade.



    Also can someone explain how you quit an App in multitasking environment? I'm sure it has been explained somewhere but I have not seen it yet.



    You just start the app. Apple's multitasking figures out when/if to suspend or terminate the app based, apparently, on analyzing how the code runs.



    Aha! Apparently there is a difference. When I compile the app in 3.2 it acts differently that when I compile in 4.0.



    For one, the debugger is terminated in 3.2 when the app suspends... not so in 4.0... it just continues when the app resumes.



    This tends to support the premise of the article that Apple may be doing things in the SDK 4.0 to assist intelligent multitasking at runtime.



    .
  • Reply 59 of 172
    TOTAL BS. Anyone who believes this needs their head examined. There is an agenda to kill flash which has nothing to do with multitasking, that's just the excuse of the day.
  • Reply 60 of 172
    cgc0202cgc0202 Posts: 624member
    Quote:
    Originally Posted by lowededwookie View Post


    I can give 128 or 256 reasons. It's about the limited resources.



    The problem with many programmers these days is that they have got used to large amounts of RAM and hard drive space and so when it comes to low resource devices like mobile devices they get stumped on how to do what they're used to doing with such limited resources. Old school programmers who've been doing programming for decades don't really have to worry because they've developed on platforms like Amiga, C64, ZX Spectrum, et al.



    If an app doesn't close down properly it's going to hold onto resources that other apps can't run. In a multitasking environment on a device with only 256MB RAM that's going to cause issues down the track when all the other apps are playing nice and one app decides to rebel. Apple would have thought about this hence the reason they're trying to push XCode which incidentally they've been pushing on the desktop and laptops as was well noted with Photoshop and Office during the move to Intel (hmmm Adobe popped up again just then).



    My McIntosh Classic had 25Mb RAM (???). It was able to run MS Word 5, I was even able to integrate scientific equations in there, did internet (imagine when they were only kb speeds), and most of the applications then that I needed for basic research -- including basic graphs, presentation, etc.



    Honestly, for a very long time, there is not much in the succeeding versions of MS Word that I really used but the program has bloated with succeeding versions.



    Every added line in the script can mean additional instructions requiring allocation of resources -- thus slowing execution.



    Now, it is not unusual to have applications in the Gb range. Most of the scripts never used by the user, or they are repeated in other applications.



    Apple is correct when it pared its OS scripts when it developed v10.6 for the OS X. And, further paring the OS X down to come up with iPhone OS.



    CGC
Sign In or Register to comment.