Aside of the fact that the app displayed an error message at first launch ("Notification error" - "no valid 'aps-environment' entitlement string found for application" - how did this pass review?), it a) doesn't support multiple accounts, b) is very laggy to use when you compare this to, say, the android version and c) feels like another one of these "let's embed the website above a little native toolbar"-apps
Because Safari gets to JIT-compile JavaScript and UIWebView embedded into apps can't, this actually feels slower than the website (~0.5 seconds between clicking on a message and seeing it load? really?)
I really think I'll move back to using their Exchange-Sync for push together with the standard web shortcut for mail management as this is faster and supports multiple accounts.
(edit) On a related note: Doing these "let's add a native toolbar to my website and publish this in the AppStore"-apps feels nearly as stupid as when everybody felt the need to add flash intros to their website. There's next to no additional value (especially with the currently broken push) provided by such a half-assed pseudo-native app.
This does nothing but hurt both native development (by leaving a bad impression on what's possible with native apps) and the open web (by making people believe that a website is not good enough)
Have you used the Google Voice app for the iPhone? It's literally the worst app I've ever seen in my life. Crashed constantly, won't refresh from the server, will close your text box randomly while typing a message (clearing your message), will fail to make calls frequently, and since I upgraded to iOS5 now has signed me out and crashes immediately when trying to sign back in so it's been rendered completely unusable.
I can only assume that there's some desire within Google to make sure the iPhone versions of their products are complete dogshit to try and encourage Android adoption.
> I can only assume that there's some desire within Google to make sure the iPhone versions of their products are complete dogshit to try and encourage Android adoption.
Do people think companies really behave this way? "Hey guys, how can we make our products crappier? Surely if people think our iPhone apps stink, they'll be motivated to go out and buy a whole phone from us!"
There are a whole host of mundane reasons why products turn out worse than they could be, and they almost never include conspiracy or malice.
Actually, from what I understand, Apple products are used quite extensively by Google employees. I have friends who work there, and there are lots of developers there who use Macs for day-to-day work. My understanding is that the Google Voice iOS app began life as a Google employee's side project, scratching his own itch. I've heard that even relatively senior managers use iPhones as their cell phone. This speaks favorably of Google's corporate culture, in my opinion.
Well, I'm not convinced it's fair to say that Apple software is worse on Windows. I don't know anyone who's tried Safari on Windows (so maybe it is worse than on a Mac, but I wouldn't know) and while iTunes is certainly absolutely terrible on Windows, from what my Mac owning friends tell me it is just as bad on Macs.
> from what my Mac owning friends tell me it is just as bad on Macs.
Who told you that? I just launched iTunes on my Lion machine, it started up in 5 seconds and started syncing with my phone wirelessly while I scrolled through 18,000 tracks without stuttering & a track played.
iTunes for OS X is arguably a little bloated and lacking direction, but it's still hands down the best library based music player/jukebox for OS X. Nothing else even comes close.
To be fair, you come right out and say you have little experience on the topic either way, so why cast an opinion? As someone who uses Apple's software on Macs and PCs extensively, there is not even a debate to be had about where Apple puts its effort.
You can even test it yourself. Take any Mac, put Windows 7 on it. Launch a clean copy of iTunes in OS X, then reboot and do the same in Windows 7. The OS X version will start up instantly, the Windows one will stall for at least 10-15 seconds. This is just one obvious example, there are plenty more out there.
You're right that I shouldn't have offered a second-hand (my friends') opinion about iTunes and specially not without spelling it out. What happened was that I complained about iTunes on Windows (which I use to put stuff on my iPod Touch), specifically that (1) it sometimes incorrectly marked podcasts as played or as not played, (2) it sometimes hung trying to connect to the iTunes store (for Windows users: if this happens run ipconfig /flushdns in a cmd window and restart iTunes), (3) somethings where hard to find in the UI (I can't remeber my concrete example now, but I did mention it when I complained with my friends), (4) rearranging app icons on the iPod's homescreen is quite buggy: you often windup with empty spots or duplicated icons in iTunes, which then crashes if you try to sync. (I did not complain about startup time, since it doesn't really bother me; and I should also say recent versions of iTunes on Windows don't have some of these problems) My friends said that all of my complaints save for (2) also happened on Macs.
No, you don't say "lets make crap". But you deny the proper resources. You place unnecessary restrictions on the project. You hire a bunch of iOS newbies and say "hey go make gmail, but you have to make it out of javascript in a UIwebview" and basically force the outcome.
Come on, hasn't everyone had to work on a project where the boss/manager didn't want it to succeed? Whether for political, personal, or boredom, people don't do their best work all the time. Not everyone is as demanding as Steve Jobs.
> Do people think companies really behave this way?
An interesting anecdote from the Steve Jobs biography:
Finding Nemo had just been released to critical acclaim and Pixar were in renegotiation talks about their deal with Disney.
(Disney's) Michael Eisner had one powerful trump card. Even if Pixar didn't renew, Disney had the right to make sequels of Toy Story and the other movies Pixar had made, and it owned all the characters from Woody to Nemo. Eisner was already planning -- or threatening -- to have Disney's own animation studio do a Toy Story 3, which Pixar had declined to do.
The threat had teeth not because Pixar would lose control of some of their characters, but because Disney's animation studio had been releasing flop after flop. After ten years of The Lion King, Beauty and the Beast, and Aladdin, there were ten years of rubbish. As a company, Disney had been creatively brain-dead for a decade.
(Pixar's) John Lasseter was aghast at the prospect of breaking up with Disney. "I was worried about my children, what they would do with the characters we'd created," he recalled. "It's like you have these dear children and you have to give them up to be adopted by convicted child molesters."
Effectively, Disney's negotiation tactic was "re-sign with us, or else we'll spin up a shitty division to make shitty sequels of your movies!"
Deciding to do work within a limited budget is tantamount to deliberately doing bad work in many instances. For example, look at Disney's history with direct-to-video sequels -- they exist purely to make money, and contain little of the magic or refinement of their fully budgeted forebears.
Eisner might not have been thinking 'shitty', but I bet he was thinking similar things when approving The Return of Jafar. (http://www.imdb.com/title/tt0107952/)
Furthermore look at the promotional poster for Toy Story 3. It's quite clearly a slap-dash effort made by a third rate hack. I mean, who recalls a product and leaves it on the store shelf, with a strategically placed sticker that could well be saying "NEW!"?
That poster could only have been made to intimidate Pixar.
>I can only assume that there's some desire within Google to make sure the iPhone versions of their products are complete dogshit to try and encourage Android adoption.
I find it interesting that Google is intentionally using its own icons for pre-existing iOS conventions (Floppy disk for save, weird action menu, nonstandard trash can, buttons without borders, etc.) I can understand being in love with your own system, but making a native app look non-native is just odd.
Personally, Google Sync/Exchange works great, gives me calendars as well, and plays nicely with my other accounts. The only hiccup is archive v. delete, but that's not a huge one. I've had no desire for a GMail app.
The weirdest Google-ism I found was when running the desktop version of Reader on my iPad: single-finger scrolling was turned off! I had to use two fingers as if I was using a Mac trackpad.
That's actually a consequence of how iOS handled scrollable areas on pages prior to iOS 5. Totally not Google's fault; I believe you'll have better luck using desktop Reader in iOS 5.
This is true - the Google Voice app is now much much better, but it is worth pointing out that there were tons of bugs that weren't fixed for over a year, like:
* freezing irrecoverably when opening the app/going to inbox very often
* losing all the text you've typed when anything causes the textfield to lose focus
* things like gaining network connectivity causing said textfield to lose focus
Perhaps this qualifies as ad hominem, but this experience was biblically awful and from a major software company. Seeing how this new Gmail app is a bunch of Web views and needlessly non-standard widgets (=> part of the worst dredge of apps), it makes me start to feel pretty cynical about their iOS strategy.
Then again, taken the experience using the Android browser while developing mobile websites, maybe it's an institutional inability to develop polished mobile applications.
No, I switched to one of the paid apps (GV Mobile+) because it actually worked.
EDIT: I don't really know why I'm being downvoted for this. Wouldn't you switch apps too if you relied on google voice for your text messages and you couldn't log into it anymore without it instantly crashing?
Hanlon's Razor. There was a login bug with iOS 5, and Google pulled the iPhone app from the Appstore until it was fixed. It's been back for a little while now, and stable.
The Android version is far better, though, due to its OS integration. I don't think Apple would ever allow what it does on Android.
Yes, I don't doubt that the iOS5 login bug was not intentional, however every other issue I mentioned has been there since I switched back to an iPhone from Droid when the Verizon iPhone was released. That's nearly a year of a completely malfunctioning app (although, I could actually log in to that one.)
They've had the iOS 5 beta available since June and they didn't bother to fix it before the actual release. If that doesn't say that they don't care, I don't know what else.
We had a version of our app be approved by Apple with a critical login bug for anyone how had never installed the app before. Apple didn't even bother to launch the app or else they would have received the error! Now, obviously, this was our failure to catch this in QA but, seriously? Why even have a review process if you're not even going to bother logging in with the credentials we supplied?!
This actually is part of the appstore review process (I do this for my job). However, we've had apps slip through before. I'm not sure entirely why this happens, since the checks for missing entitlements or incorrect signing should be automatic, but it does on occasion.
This is a problem with Apples review process as much as anything else, since you can't test the properly signed release version of the app until you publish it to the appstore for all to see.
What would have happened had Apple rejected this app? Politically, Apple are between a rock and a hard place here. Ultimately the culpability lies with the Gmail app team and they have acknowledged this and pulled the app. https://plus.google.com/100940716892313727285/posts/4aPVQTj9...
There is an world of difference from rejecting an app for "duplicating functionality" and for bugs. If Apple rejected it and said they would take it once it was fixed, the only blowback would be from those who thought Apple was lying. No reason to cater to those folks. More likely, we wouldn't hear about it at all.
It is indicative of a larger problem I have with the App Store. I am not a fan of requiring a review process. But once you crossed that bridge, make it a damn good and tough review process. The amount of crap that gets through is amazing. You already pissed off people who don't like apps getting Apple's approval, you might as well crack skulls and make sure there is real quality in every app.
That doesn't mean Apple's QA will look for ways to make the app crash or bug out. It just means that if, during the course of regular testing it crashes, they'll stop testing and reject on the spot.
"There's next to no additional value (especially with the currently broken push) provided by such a half-assed pseudo-native app."
There may be no additional value to nerds like you and me, but there are plenty of normal people who want GMail on their homescreen and want to get it from the App Store.
Thanks to JSCore's JIT compilation only working in Safari or saved-to-home-screen web apps, they've basically taken three years to actually make a 'native app' version of their e-mail service, which is slower than just using the web app (and feels worse to use).
I really hate how they just build wrappers around an existing mobile website and publish it. What's the point of building native apps then? Just Push notifications? Isn't that supposed to be against the terms of the App Store?
it is. They could only fix it for the homescreen links which also didn't get the JIT before iOS5
Having a JIT requires you to execute writable memory which is a privilege given on a per-process level. So for an embedded webview to be able to do it, your app would need it, but third party apps are never allowed this.
It's possible that they changed UIWebView to spawn a background process for the actual rendering, but I guess we would have heard about that (we haven't we only heard about homescreen links now being JITed)
Would you need executable and writable at the same time? The JIT generates code into a writable+non-executable memory, and then makes it readonly+executable.
That's the point. You don't get segments that you can mark as executable if you are a third-party app. The only code that's executable is the code segment of the compiled binary (that's signed by apple and won't be executed if it has changed since it has been signed).
Trying to mark memory as executable will cause your app to be terminated. Jumping into non-executable memory will also cause your app to be terminated.
Aside of protecting you (as a user or as a developer) from a big class of security issues, this also ensures that nobody ever gets to run code that's not loaded from the App Store (and thus would generate revenue without giving a share to Apple).
It still is. The JIT was enabled for "pinned" web applications (added to the home screen), but for the JIT to be enabled the whole process needs to be allowed to execute code from writable memory. There's absolutely no way Apple is going to allow arbitrary applications to do that.
As pilif notes, a workaround would be to have UIWebView's content exist in a separate, JIT-able process.
The app is so bad it sounds like they're saying: "If you really want a great native Gmail experience, switch to Android."
Like Gruber said on The Talk Show recently (and I'll probably be downvoted given how unpopular he is here): Apple gets people to upgrade their phones by making them love their current one; Android makers get people to upgrade their phones by making them hate their current one.
Seems like the strategy continues to holds true here...
I like my iPhone 3G, but it's annoyance at no longer receiving security updates, and lack of iCloud support, that would make me spend money to upgrade. Not love.
That's a little too cynical for me, and runs counter to Google's very origins (not to say that the managers and execs in charge of today's Google may have diverged from that):
http://bit.ly/uvHu5n
"[Excite CEO] Bell was visibly upset. The Stanford [Google] product was too good. If Excite were to host a search engine that instantly gave people information they sought, he explained, the users would leave the site instantly.
"Update: 11/2/11: Earlier today we launched a new Gmail app for iOS. Unfortunately, it contained a bug which broke notifications and caused users to see an error message when first opening the app. We’ve removed the app while we correct the problem, and we’re working to bring you a new version soon. Everyone who’s already installed the app can continue to use it."
I guess it's about expectations. As a web app, people might expect a slight delay when tapping. But a native app should be responding instantly to taps (like the rest of iOS does), and this doesn't cut it.
When it launched, the mobile Gmail app was great. Unfortunately they decided to break scrolling by poorly reimplementing it in JS and it's all downhill since then.
Yesterday there was a google team blog post about the new gmail interface. I went there (the blog) in my iPad and there were no scrollbars and accelerated flick to scroll didn't work at all. It definitely felt weird to have no accelerated scroll.
The laggy scrolling is likely because they're not using native scrolling, but rather using the same JS based scrolling they use in the web app to overcome issues with iOS 4's support for fixed CSS positioning. However, since the toolbar is native in the app, they should just use native scrolling.
You can get send as if you use Google Sync (gmail over exchange instead of imap) and enable the send as setting in their control panel.
You can also do it over IMAP by copying and pasting a comma into the account field and adding another email address, I think. You may also have to use the SMTP server with alternate credentials.
Searching for mail or finding 'labelled' archived content on the default mail client was a real pain and this app answers those questions but as previously mentioned..
No multiple accounts? I have several Gmail accounts that I need to manage on the fly, and it is indeed quite 'laggy' when you have images or heavy content in the email body (which it doesn't scale down!)
All in all, it's a step in the right direction and about time this app came to market - let's just hope they resolve the issues and tweak the overall user experience.
All the more puzzling is that they waited so long to do it. There has always been dissatisfaction with Mail.app but it's taken them 3+ years since the launch of the iPhone SDK to come up with a half-assed wrapper around a website that performs more poorly than running it in WebKit.
I was hoping to see the native Gmail app that can support multiple accounts, but it is currently not. Oh well. I'll stick with Mail for now.
It look like the native Gmail itself is a browser and navigate to Gmail Mobile website. Thus is the reason why the native app only can hold one account at a time.
The AppStore search function only finds third party apps and the AppStore link from the blog post opens the AppStore and shows the unhelpful error message "Your request could not be completed".
I hope the reason for this is that the german store just hasn't been updated yet.
If they on the other hand can't release it here because of the name GMail, which Google had some legal trouble with here in Germany, it would be a big letdown and a kind of poor decision by Google.
I've overheard lots of discussion from iOS developers lately on this becoming a new trend. As certain apps increase in complexity the old Facebook home screen style becomes much less scalable, and this new method seems to be the answer.
My guess is we'll see at least another half dozen popular apps take on this style as well.
Yeah, would be a nice UI feature if it didn't cut off some of the labels, including Google's own "Important and unread" (at least I think it's that, the end is cut off...)
Think I'll just keep this app around for those odd times when I have to find an email from a week ago.
I'm baffled that Google, of all companies, can't make a decent mobile web app. The first Gmail versions from years ago on the iPhone were beautiful and they degrade with every new version.
Because Safari gets to JIT-compile JavaScript and UIWebView embedded into apps can't, this actually feels slower than the website (~0.5 seconds between clicking on a message and seeing it load? really?)
I really think I'll move back to using their Exchange-Sync for push together with the standard web shortcut for mail management as this is faster and supports multiple accounts.
(edit) On a related note: Doing these "let's add a native toolbar to my website and publish this in the AppStore"-apps feels nearly as stupid as when everybody felt the need to add flash intros to their website. There's next to no additional value (especially with the currently broken push) provided by such a half-assed pseudo-native app.
This does nothing but hurt both native development (by leaving a bad impression on what's possible with native apps) and the open web (by making people believe that a website is not good enough)