Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

MacRumors

macrumors bot
Original poster
Apr 12, 2001
63,548
30,866


CNet reports that Google has confirmed that they are using an undocumented API in their Google voice-search application. Google's mobile application takes advantage of the iPhone's proximity sensor to start "listening" for a new voice search. While a useful and unique feature, it technically runs afoul of the iPhone SDK's rules that prevent the use of undocumented APIs.
Under the original terms of the SDK, however, applications using such techniques were not supposed to make it through to the App Store. As a result, other developers who played strictly by the SDK rules would not have felt it possible to create an application that duplicated Google's voice prompt using the proximity sensor, whereas those who had the resources to quickly rewrite anything that ran afoul of the App Store gatekeepers could push ahead and test Apple's limits.
Developers willing and able to sneak into the App Store using such techniques could have an advantage over their competitors. It's not entirely clear if Google's usage was officially authorized by Apple or if it was just missed.

App Store Link: Google Mobile Application, Free

Article Link: Google Uses Undocumented API in Google Voice Search App
 

MHerstand

macrumors member
Apr 19, 2008
43
0
Madison, WI
Strike a deal?

I would guess that Apple purposely allowed Google to do this. After all, Google and Apple are working in partnership for the iPhone (see: iPhone introduction, 2007). However, if this is to be presented as just another app, it does seem like unfair (illegal?) business practices to ignore violations of some apps and not others based on your business partners.
 

lozanoj83

macrumors 6502a
Mar 5, 2006
546
0
Southern California
Im going to assume they worked with Apple on this. After all, Google and Apple have made many things for the iPhone so it's not surprising. If another developer had used a undocumented API then yes it would be breaking, but im going to assume that Google has Apple's blessing on this one
 

NorCalLights

macrumors 6502a
Apr 24, 2006
597
85
Hmm... the last time I programmed anything was back in a college comp sci class so maybe I'm missing something but how can writing a simple If/Then statement in a loop to listen in on the prox sensor possibly be against the SDK rules?

Isn't it just "If ProxSensor = True Then Run(ListenCode)"?
 

DipDog3

macrumors 65816
Sep 20, 2002
1,191
812
I was wondering how Google was able to do that trick.

I guess the old adage is still true, "It's All About Who You Know!"
 

chr1s60

macrumors 68020
Jul 24, 2007
2,061
1,857
California
I'm guessing Apple allowed this because it is Google and not some random developer. Google has the proper resources and relationship with Apple that would lead me to believe Apple trusts them much more than others.
 

macduke

macrumors G5
Jun 27, 2007
13,142
19,682
Hmm... the last time I programmed anything was back in a college comp sci class so maybe I'm missing something but how can writing a simple If/Then statement in a loop to listen in on the prox sensor possibly be against the SDK rules?

Isn't it just "If ProxSensor = True Then Run(ListenCode)"?

But you see, in the publicly available SDK there is no access to the controller for "ProxSensor", Google has a special version that allows deeper access to the iPhone's functions. The API has to have calls for it, and apparently Google has it. Perhaps this will come bundled with Push Notifications at Macworld 09 as a SDK / iPhone 2.3 update. The last 2.2 / SDK update allowed the recording of line-in audio, which there was previously no API for.
 

funnyent

macrumors regular
Dec 26, 2007
152
4
it's google. They have made YouTube and maps for the iPhone. Apple needs them! Apple won't care.
 

NorCalLights

macrumors 6502a
Apr 24, 2006
597
85
But you see, in the publicly available SDK there is no access to the controller for "ProxSensor"

Oh really? I didn't realize that. I guess now that you mention it, I've never seen an app that uses the proximity sensor. Very interesting.
 

zengod

macrumors member
Feb 18, 2008
75
12
Can't say I'm fussed if apple pull it - I searched for "Edam Cheese" and got "Teen Panties" ......
 

domness

macrumors 6502a
Jan 14, 2008
651
26
Sheffield, UK
It's the slippery slope! Developers will now be complaining why their own app isn't accepted if Google's using undocumented APIs is!

I wonder what Apple will say publically about this.
 

ThunderSkunk

macrumors 68040
Dec 31, 2007
3,823
4,052
Milwaukee Area
Well, good for Google. Maybe they can implement copy & paste, MMS, & open bluetooth, since Apple is too busy making toggle switches to turn off its existing features.

As to why, I think it's fairly obvious. A. Google is Google, not Joe Blow in his basement, and B, without Google, iPhone would suck.
 

QuarterSwede

macrumors G3
Oct 1, 2005
9,785
2,033
Colorado Springs, CO
it's google. They have made YouTube and maps for the iPhone. Apple needs them! Apple won't care.
From what I understand, Apple wrote YouTube and Google Maps apps for the iPhone. Google just provided the API's. This would explain why Google Maps on the G1 (Android) is not nearly as nice as the iPhone's Google Maps app.
 

swarmster

macrumors 6502a
Jun 1, 2004
641
114
No other dev can make an app that can't be deleted from the iPhone, but Google has (Maps, YouTube). I thought Google's "special dev" status was pretty clear from day one.
 

Sbrocket

macrumors 65816
Jun 3, 2007
1,250
0
/dev/null
But you see, in the publicly available SDK there is no access to the controller for "ProxSensor", Google has a special version that allows deeper access to the iPhone's functions. The API has to have calls for it, and apparently Google has it. Perhaps this will come bundled with Push Notifications at Macworld 09 as a SDK / iPhone 2.3 update. The last 2.2 / SDK update allowed the recording of line-in audio, which there was previously no API for.

They just used undocumented methods. There's no sneaky, middle-of-the-night Apple-Google deal here - its just developers who don't like the silly restrictions imposed by the SDK diving into the wealth of different things you can do by using stuff that's undocumented. There's many, many applications on the AppStore that use undocumented methods to provide users with features that they would otherwise never notice.

it's google. They have made YouTube and maps for the iPhone. Apple needs them! Apple won't care.
No other dev can make an app that can't be deleted from the iPhone, but Google has (Maps, YouTube). I thought Google's "special dev" status was pretty clear from day one.

Apple made the YouTube and Google Maps apps for the phone, not Google. Google shouldn't be given special permission (though I highly doubt that was the case here, I think they just did it and hoped Apple would ignore it) to go free reign with undocumented methods when independent developers spend months on an application only to get it stuck in a web of red tape for a month or two just because they used one. If Apple wants to not care about Google's use of the proximity sensor in the new version of Google Mobile App then fine - I'm all for that - but they need to give all developers a level playing field and get rid of the Mysterious Black Box of Approvals.
 

rstansby

macrumors 6502
Jun 19, 2007
493
0
I think Google had the resources to test this API carefully, and may well have worked with Apple to make sure that it didn't cause any problems. I can see how some other (smaller) developers wouldn't have the resources or relationship with Apple to provide a stable App that uses an undocumented API. I can see how some developers might feel that this is unfair, but it seems like the iPhone is much more accessible to small developers than most cell phones or PDAs.
 

SlapMonkey

macrumors regular
Jun 15, 2008
149
0
They just used undocumented methods. There's no sneaky, middle-of-the-night Apple-Google deal here - its just developers who don't like the silly restrictions imposed by the SDK diving into the wealth of different things you can do by using stuff that's undocumented. There's many, many applications on the AppStore that use undocumented methods to provide users with features that they would otherwise never notice.




Apple made the YouTube and Google Maps apps for the phone, not Google. Google shouldn't be given special permission (though I highly doubt that was the case here, I think they just did it and hoped Apple would ignore it) to go free reign with undocumented methods when independent developers spend months on an application only to get it stuck in a web of red tape for a month or two just because they used one. If Apple wants to not care about Google's use of the proximity sensor in the new version of Google Mobile App then fine - I'm all for that - but they need to give all developers a level playing field and get rid of the Mysterious Black Box of Approvals.

Ok, in case you missed Kwill's link above (and I thought this was common knowledge by now anyway), the CEO of Google sits on Apple's Board Of Directors (and visa versa) so yes, I'm sure Google does get special allowances when developing apps and Steve Jobs himself said as much in one of the original iPhone keynotes... It's really no big deal; people are just so desperate for dirt and gossip. :rolleyes:
 

ElBerserko

macrumors regular
Jun 30, 2007
186
121
I am pretty sure they are also using an undocumented API to make a tone come out of the earpiece instead of the speaker on the bottom.
 

thevofl

macrumors regular
Aug 7, 2006
216
231
Bad Google, Bad Google, Bad, Bad, Bad, Bad Google.

Having said that, the App is cool and the kind of creativity Apple should be encouraging.
 

Winni

macrumors 68040
Oct 15, 2008
3,207
1,196
Germany.
I think Google had the resources to test this API carefully, and may well have worked with Apple to make sure that it didn't cause any problems. I can see how some other (smaller) developers wouldn't have the resources or relationship with Apple to provide a stable App that uses an undocumented API. I can see how some developers might feel that this is unfair, but it seems like the iPhone is much more accessible to small developers than most cell phones or PDAs.


Do not take this as a personal insult, but you, like most others on this forum, don't know anything about software development and instead have way too much confidence in Apple.

It doesn't matter whether you're Google in all its shiny glory and might or John Doe in your garage. It NEVER is the job of a developer to test an undocumented function. ONLY the creator of the framework CAN properly test undocumented functionality and then properly release it.

There are two reasons why APIs are undocumented:

1. The API itself has not yet been thoroughly tested enough by its maker, in this case Apple, and therefor the API is deemed unstable and subject to change. Using an undocumented API can render an application useless over night in case that the maker of the framework/API (again: Apple) decides to change the name of the API, its functionality or just drop it from the framework entirely.

2. You create - and use - undocumented APIs to have a competitive advantage over third party developers. Microsoft has been sued over this again and again. If Apple condones this use of undocumented APIs, then it is plain and simple foul play.


The iPhone being more accessible than other smartphones or PDAs: That is uninformed, wishful thinking. Phones using Windows Mobile have been open for every programmer from day one. Openness to third party developers has ALWAYS been a major cornerstone of Microsoft's strategy for their platforms.

Now you might hate Microsoft like almost everybody else here, but unlike Apple, Microsoft does not create viable platforms for an entire industry by accident. Microsoft creates platforms intentionally and by design, and when Steve Ballmer gave his "developers, developers, developers" rap that wasn't just a bad show performance, but what Microsoft's philosophy is all about.

Apple doesn't care about software developers. They never have and they never will. To Apple, third party developers are a necessary evil at best. But Apple knows that they cannot do everything alone, and they hate it. Providing SDKs to other developers is always an afterthought at Apple, not at the core of their strategy. That's why the world had to wait that long to get an iPhone SDK and the AppStore where your only choice is to put up with Apple's arbitrary decisions. You cannot know whether your app will make it there or not.

You. Just. Don't. Have. That. ****. With. Microsoft.

Hell, Microsoft even opened the Xbox 360 platform to indie developers. Now ask Sony and the others if they ever intended to do something like that.

So no, the iPhone is not the most accessible platforms for small developers. It is exactly the opposite.
 

kas23

macrumors 603
Oct 28, 2007
5,629
288
The iPhone being more accessible than other smartphones or PDAs: That is uninformed, wishful thinking. Phones using Windows Mobile have been open for every programmer from day one. Openness to third party developers has ALWAYS been a major cornerstone of Microsoft's strategy for their platforms.

This is true. The are very large communities of developers hacking the life out of Windows Mobile, and in most ways making it a hole lot better, while not voiding any warranties.

People probably don't realize this, but for every 1 iPhone App, there are like 10 Win Mo apps, and most are made by Joe Schmoe developer in their bedroom (and are free).
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.