Pages

Showing posts with label Google IO. Show all posts
Showing posts with label Google IO. Show all posts

Sunday, May 8, 2011

New news or no news? Why Google music and YouTube Rentals for Android devices are obviously ready to roll

And once again, my dear Google, I've to apologize for all that poking around in your guts.. But I can't do anything about my feelings for you...
Today I discovered something special... small bits of Google Music, buried deep down in the javascript code of the Android Market.. that's right. The Android market and nowhere else...

What does that mean? Basically that you will be able to push-sync the music to your devices... but let's step through every bit of my discoveries together.

The magic lies in the production-compiled javascript found easily inside the website.

here you are :D

Now let's see what we can find if we search for some music terms inside our javascript:


I beautified the code a little, so it is easier to read..

Here we have the first evidence of Google Music purchases:



Ze: "This music can be heard on..."


Nothing special so far, but wait...
Here we have the parts of the Audio-Player that is used for previewing the Audio-Tracks :)


function Ym(a, b, c) {
a = M(a.a, "preview-control", b);
Rb(b, "audio-playing", c);
Rb(b, "audio-idle", !c);
Rb(a, "pause", c);
Rb(a, "play", !c);
}

r.Pi = function() {
var a = M(this.a, "audio-playing");
Ym(this, a, !1);
Xm(this, uc(a, "tr", "track-row"), !1);
};


So, if you thought this was neat, wait for what comes next:
YouTube Movie Rentals on your Android device!

<h1 class="co-dialog-additional-header">', "How to watch your movie", '</h1><div class="co-dialog-additional-content"><table><tr><td style="width: 47%"><div class="chrome-icon goog-inline-block"></div><div class="co-dialog-additional-content-movies goog-inline-block"><div class="co-dialog-additional-content-title">', "On the web", '</div><div class="co-dialog-additional-content-info">', f, '</div></div></td><td><div class="android-icon goog-inline-block"></div><div class="co-dialog-additional-content-movies goog-inline-block"><div class="co-dialog-additional-content-title">', "Verizon Motorola Xoom", '</div><div class="co-dialog-additional-content-info">', "Open the Videos app on your Motorola Xoom.", "</div></div></td></tr></table></div>"), d = d.toString(), fj(c, d || ""));

If I may de-clutter that whole stuff for you:
"How to watch your movie" "On the web", "Verizon Motorola Xoom" "Open the Videos app on your Motorola Xoom."

So, YouTube rentals come to our Android devices real soon! You have to keep in mind that this is the Production-Code of the Android market and not the canary-build! (Yeah, they actually have testing builds of all the webapps too -> Poke around in the Google Voice code and you find the proof for the canary version)
So that means that basically they just have to flip a switch and get going!


function Oc(a, b) {
var c = b || new N;
Kc(Bc(a, {
xe: "movies",
Ze: "This video can be watched on...",
mg: "You are renting...",
lg: !0,
kg: "Rental period",
ig: "Compatible with..."
}), c);
if (!b) return c.toString();
}
function Eg(a) {
return a.a == "YOUTUBE_MOVIE";
}

Here the embed code for the Trailer-Popups:



sa("enableTrailerPopup", function() {
var a = M(Gc.c, "trailer");
if (a) {
var b = a.getAttribute("data-trailerId"), c = a.getAttribute("data-docTitle");
T(Gc.u, a, $, function() {
var a;
a = {
wi: b
};
var f = new N;
Jc({
dg: "https://www.youtube.com/embed/" + O(a.wi) + "?autoplay=1&vq=large&rel=0&autohide=1"
}, f);
a = f.toString();
Vi(Fc.a[4], a || "", c, "trailer-dialog", .98);
});
}
});


Here are some more findings... these Variables define the page-selectors that determine the current visible page:


function Hg(a) {
if (a.indexOf("app-") != 0) if (a.indexOf("album-") == 0) return "MUSIC_ALBUM"; else if (a.indexOf("artist-") == 0) return "MUSIC_ARTIST"; else if (a.indexOf("song-") == 0) return "MUSIC_SONG"; else if (a.indexOf("book-") == 0) return "OCEAN_BOOK"; else if (a.indexOf("movie-") == 0) return "YOUTUBE_MOVIE";
return "ANDROID_APP";
}


And some wording-definitions:


switch (c.Li) {
case "ANDROID_APP":
c.wb ? d.a("Installed") : d.a("Purchased");
break;
case "OCEAN_BOOK":
d.a("Read");
break;
case "MUSIC_ALBUM":
d.a("Listen");
break;
case "MUSIC_TRACK":
d.a("Listen");
break;
case "YOUTUBE_MOVIE":
d.a("Watch");
}

And some status messages:

var Ai = {
ANDROID_APP: "This app will be downloaded to your device shortly.",
MUSIC_ALBUM: "Your album is now ready for you to listen...",
MUSIC_SONG: "Your song is now ready for you to listen...",
OCEAN_BOOK: "Your ebook is now available for you to read.",
REFUND: "Your refund was successfully processed.",
YOUTUBE_MOVIE: "Your movie is now ready to watch..."
}, Bi = {
ANDROID_APP: "Processing the install request...",
MUSIC_ALBUM: "Adding the album to your library...",
MUSIC_SONG: "Adding the song to your library...",
OCEAN_BOOK: "Making the book available to read...",
REFUND: "Processing the refund request...",
YOUTUBE_MOVIE: "Making the movie available to watch..."
}, Ci = {
ANDROID_APP: "Please sign-in to purchase this Android App.",
MUSIC_ALBUM: "Please sign-in to purchase this Album.",
MUSIC_SONG: "Please sign-in to purchase this Song.",
OCEAN_BOOK: "Please sign-in to purchase this Book.",
YOUTUBE_MOVIE: "Please sign-in to purchase this Movie."
}, Di = {
ANDROID_APP: "Please sign-in to install this Android App.",
MUSIC_ALBUM: "Please sign-in to get this Album.",
MUSIC_SONG: "Please sign-in to get this Song.",
OCEAN_BOOK: "Please sign-in to get this Book.",
YOUTUBE_MOVIE: "Please sign-in to get this Movie."
};




For all those who were brave enough to browse all that lame code until here... One of Googles infamous Error messages :D

"Oops, we're temporarily having trouble with your order. Right now our engineers are busy searching the back room for another copy of \"" + (a.f + "\". Once they find it, we'll be back in business. Apologies, and please try again later."




By the way there is in fact a hidden "Post to Buzz" button, but it is obviously not enabled... I don't know why :(



<div class="google-buzz-button-container goog-inline-block"><a title="',"Post to Google Buzz"

And my personal favorite:
'" data-message="CONFIDENTIAL - INTERNAL ONLY! POST USING ONLY YOUR GOOGLE.COM ACCOUNT! '
This string is included in the hidden buzz button! :D

So, what I expect:

The appearance in the production code probably hints that one or more of these features will be revealed at the Google I/O 2011!
Only 2 days left!

Saturday, May 7, 2011

Have you noticed? Play with the google IO Page :)

If you move/drag the Google IO logo first, you can one by one drag and drop the page elements around on the page which interact nicely with the bouncy balls :D yay for HTML5 physics fun!




Check it out: Google I/O 2011

Thursday, May 5, 2011

New news or no news? Google Business profiles

Today while poking around in Google's code (sorry 'bout that Google... it's all out of love), I made an interesting discovery. But before I reveal my wisdom, let me set a few things straight:

I do not know every single Google service, I also do not spend all my day looking up Google news, so if this is already known and reported, don't flame me.

Ok, back to business.
I already predicted in a former post (What might or might not happen at Google IO 2011) that Google is starting an attack on facebook.
Quote:

Overall Google starts an attack on Facebook, providing functionality for advertising, offers etc, that will be integrated in the Google search as a part of social search.

and it seems that I was right.
If you go on your Google profile (it just shows up there) and inspect the account-drop-down menu on the top-right side of the page in chrome, you find an interesting hidden menu entry..

Thanks to chrome's awesomeness, you can reveal this entry by just deselecting the checkbox next to the display: hidden; entry in the css inspector.

And voila: The link to Google Business Profiles appear!

Sadly the link (here) still leads nowhere :( So it is (at the moment) a dead end. But this means that there will be actually an pendant to the "Pages" of Facebook... Good news for business-owners!

Maybe it is just a code-corpse or it's already well known, but... I thought I should let you know

Monday, May 2, 2011

New news or no news? Google-TV Project on Google Code.

I checked out the Google TV kernel a while ago on Google Code. Nothing spectacular... but today, suspecting that there will be some kind of thingy going on at the Google IO 2011, I tried to find the project again and stumbled over this:
http://code.google.com/p/google-tv/

It is in fact not your average 404 and I got redirected to this site from http://code.google.com/p/googletv/.
So there IS in fact something going to happen... I hope they'll open source the whole googleTV platform. At least they'll provide examples and sdk's for the Google TV here...

Sunday, May 1, 2011

What might or might not happen at Google IO 2011.

This won't be a very exciting post.. I'll just point out what might happen on the 10th/11th of May 2011 based on rumors, sorcery, voodoo, chicken bones and the official available information.

It might be vague but it is for sure better than Siegler's techcrunch troll-diarrhea.

Android:

Yeah there will happen a ton of stuff on the IO. First of all, they will push the Honeycomb source into AOSP. It will happen, because it is simply overdue! They already pushed quite a bit of the GPL parts to the source-tree, but vital things are still missing... Like the launcher, the browser etc.
Probably they will also announce/preview Honeycomb 3.1, which contains tons of bugfixes and a few new features, but it is also possible, that they'll drop the 3.1 Source directly on github, because they want to comfort the raging open source community (including me).

The Google TV code might or might not be released. At least they will introduce the SDK for Google TV. That will happen for sure. Why? because in Room 11, there will be a Session called "Building Android Apps for Google TV" at the IO. This also means, that all Google TV devices will gain Market access pretty soon (I guess they will start a rollout for updates at the IO).

Maybe they give also an early taste of the next Android generation "I", maybe Ice-Cream Sandwich. If I'd speculate very wildly, Google could already release a limited preview SDK of the new Android OS, but probably they'll just pre-announce it. The "I" generation will merge GoogleTV, Honeycomb and Gingerbread into one version, probably because they fear source fragmentation and the three repositories have always to be synced so the versions drift not too far apart. So that's why it's simply more economic to merge all three Source-Trees.

Furthermore, Google will force the device manufacturers to provide open interfaces to their custom UIs they built on top of Android. (Session: Designing and Implementing Android UIs for Phones and Tablets) But this is wild speculation. [WARNING: this is unlikely to happen and just wishful thinking :) THX @Sam for reminding me that this needs a clarification]

GoogleTV and Honeycomb (and other Android versions?):

They will get a webapp-store for mobile/tablet/GoogleTV apps integrated in the system-browser or as a frontpage-link on Google mobile-search (see session "Building WebApps for Google TV") (wild speculation)

Blogger:

They will start the rollout for the new Blogger views (you know them already, don't you?), which will be partially optimized to be somewhat like a pendant to Facebook Pages for companies (see session "Building a Business Web Presence using Blogger API's"). This could also hint to an integration of Blogger into Google's mysterious social network.. They will also present a "+1" plugin for blogger the same time... clever huh? :)
BTW: Have you ever noticed the similarities of the new Blogger-Views design and the new Google profiles design? Coincidence? I don't think so. It might be the start to integrate all those social services (including picasa & Places/ex-Hotpot) into one social net, which parts are all opt-in. (way better solution than facebook's "we shove it into your face and if you are lucky enough to find the correct button, you can opt-out" mentality)

+1:

+1 will be officially introduced, what means that the +1 button for content-sites will also be introduced. (yay!) See session "An introduction to the +1 button" (for sure)
The Chrome-Extension (or even browser-built-in functionality?) for +1 will be presented. (for sure)


+1 Extension CONFIRMED: Watch the video (Dear Sophie) closely:


or jump to 0:51

Google Places:

Will be integrated with Google's other social Services like +1. I already confirmed that because I discovered the following fact:

If you rate a place "best time ever" and save the place for later/star it, it gets automatically +1'd in the places search on Google.

I also think that places will get a tab in Google Profiles or at least gets somehow integrated into the +1's.
Places will also possibly get somehow linked to Public Profiles or Blogger accounts of companies (wild speculation).
Overall Google starts an attack on Facebook, providing functionality for advertising, offers etc, that will be integrated in the Google search as a part of social search.

Google Social Search:

Will be extended... Nothing more on that.

Google Circles:

Will be announced, but maybe not directly on the IO but soon. It isn't a real social network... it will just incorporate existing social functionality on Google and make it possible to share information actively and passively with contacts and the world wide web. (The contacts will influence prioritization or highlighting of search results etc, maybe there will be also a commenting/sharing function, who knows)

Google Maps:

will get more social.
It will be tighter integrated with hotpot/places (maybe latitude too).

Google Shopping:

Will be integrated in the social experience. (probably) At least they will lay the foundation for integrating it into social search.

Games:

A shitload of stuff about games using GWT, HTML5 and Android.
Maybe they introduce a new Platform for game-devs.

Geolocation:

Shitloads about geolocation, maybe unification of API's. They push geolocation use for making the social search and personalized search more effective.

Google Analytics:

Gets in-Android-App-Performance and usage logging thanks to the new GA API for Android.

Google Docs:

Might get an addon.

Google Voice:
Might gain VOIP support.