What does Google's Android mean for Drupal?

Events happening in the community are now at Drupal community events on www.drupal.org.
Dublin Drupaller's picture

Hi Guys,

Assume most of you guys heard about the open mobile platform called Android that google announced yesterday. It's interesting news and while the SDK won't be available to download until next week (Nov 12th), I was wondering what you guys think it might mean for Drupal....

It seems inevitable that internet on a mobile handset is going to be 'the next big thing'...and it not only opens up a huge amount of opportunities (think about all those billions of people who don't have their own desktop computer, but, have a mobile and will start surfing) and google's approach, alongside the 30+ partners, gives the open-source community a huge boost: the whole essence of the android system appears to be based upon the open source philosophy.

That said, google haven't revealed what their pound of flesh is for driving the initiative forward, but, I much prefer a future where we aren't reliant on the big 2 (apple / microsoft) and instead are reliant on a Drupal-esque open community.

One opportunity I always saw for Drupal is as a framework for an online desktop...which can be accessed via mobile/desktop/anywhere. In other words, instead of synching mobile/desktop devices, day-to-day tasks such as email, blogging, wordprocessing, media storage etc. happens on that 'online desktop', but, I suppose the single biggest opportunity for Drupal (I think) following google's announcement will be the huge rise in demand for revamping existing websites over the next few years. Drupal, I think, is perfectly positioned to be the chosen platform for developing desktop-and-mobile (incl. Android) friendly sites.

One thing that's unclear to me at the moment and that is will someone else develop the equivalent of Drupal for the Android platform or will it be as simple as creating an Android_API.module for Drupal?

Any thoughts?

Dub

Comments

no effect

moshe weitzman's picture

Tip: posting a comment does not subscribe you to anything on this site. you should subscribe to the group.

not quite..

Dublin Drupaller's picture

I've noticed a lot of Drupallers doing that (posting a blank 'subscribing' post) on the main drupal.org forum....it means when they click on MY RECENT POSTS the thread shows up in their recent posts list.

So, in a roundabout way, they are 'subscribed' to the thread.

dub

Yup

niklp's picture

That's the one... because Drupal doesn't have a feed for that (tracker). Which it oughta, really. It would save a lot of chewing on the servers I think. Would also keep things more current, as at the moment, I have to check manually, whereas that would not be true with RSS (obviously).

$0.02 ...

finally

moshe weitzman's picture

the internet was built on open protocols and equality for all hosts and packets. the internet never cared if the client was a home PC or a university server or an ISP. this architecture has proven to be so very wise.

the the mobile network has always had monsters who control the packets into and out of the network. further, they control the clients (handsets). those monsters will still exist control the network, but the handsets are breaking which is a big big step. it seems pretty unlikely that we'll be able to slay the monsters who control the mobile network since they own the cell tower infrastructure which is too expensive to reproduce. ad hoc wifi was once suggested as the alternative but i don't think thats thriving these days.

interesting...

Dublin Drupaller's picture

Hi Moshe,

Interesting post.

It's early days and maybe you're right, those 'monsters' who own the towers might try and own the mobile-internet, but, somehow, I doubt it. Microsoft tried to 'own' the worlds PCs and failed. Apple are trying to lock their consumers into an apple ecosphere and it looks like Apple will fail at that too. Thankfully, both microsoft and Apple are not on the list of partners for the google initiative.

that's not to say that google aren't going to try the same thing...as I said earlier, google haven't indicated what their pound of flesh is yet, for driving the android initiative so maybe I'm, wrong, but, on a positive note, I think it's a good thing that there won't be a betemax/vhs style battle...i.e. standards are being agreed to improve the internet on mobiles.

dub

I think what Moshe is saying

niklp's picture

I think what Moshe is saying is valid, but it misses something. The ways of controlling access to anything via mobiles are under massive flux at the moment; most definitely in Europe and the East. We're being offered huge amounts of bandwidth over here for a low monthly price, still on top of the usual GSM network rental rates, naturally... ;) This is a seachange from a couple of years ago (Orange still charges about £4/MB if you don't have a data contract, IIRC) when data was trickier to handle, without the 3G setup.

We are approaching a time when internet access via mobiles will be totally commonplace; whether or not the "ISPs" decide to control the content that is passed through their network is another matter, but I can vouch for one thing: anyone that attempts to censor internet content over mobiles will certainly lose out to a network/provider that does not, even if cost is a factor, in my opinion.

Kineta Systems - Web Development in Nottingham, UK

Android Alpha Site - FatAtlas.mobi

jamesJonas's picture

Using the Android emulator, inside the SDK, I was able to put together an alpha level port of my website by Tuesday night, called FatAtlas.mobi . I have outlined some of the issues I discovered here http://drupal.org/node/192183 . The next day I began testing iPhone using another emulator, as discussed in a follow-up post.

WebKit: A starting point for Drupal

The big news for Drupal is that Google standardized on WebKit. This is the same browser platform for 36 Nokia SmartPhones/devices, iPhone and of course the desktop browser Safari. The means we may be able focus on the near term on compatibility with WebKit, using various phone emulators to test our sites/modules. This can leave the API work, which should be (although I have yet to see the docs) exposed via javascript APIs. I could imaging calls to the mapping layer, although my gmaps did come up on the browser [and only crashed the emulator's browser 50% of the time]. Using a set of emulators to get us started, we can have module and core developers testing their stuff immediately. Of course emulators are just a starting point, they only approximate the environment.

Early Assessment

Drupal is almost mobile today. There is some very real work needed for specific pages/features/modules, as they tend to expect a wider screen. For example, a nodes tabs, if greater than three/four, forces a bottom scroll. The standard login screen is a bit wide. But core features, for the most part just seem to work.

What I did discover is that we need to become much smarter about loading javascript, css and images. Larger pages need to be broken up and accessed on an as needed basis. One of the most important issues to focus on in the short term is active use of remote calls. For example, getting a view when the tab for the view is clicked. Using Collapsible blocks, whose content is ajaxed remotely when the block is opened. The good news is that the Drupal community has been working on some of these very same issues for some time.

Android Browse Crash Zone

The biggest issue I'm finding is that Browser often crashes during a page load. This may be due to the complexity of the page, problematic javascript, or simple an unstable emulator. Still Testing.

James

looking good..

Dublin Drupaller's picture

Hi James,

Thanks for posting that...funnily enough I was just looking at that thread and thought I'd paste a link here. You're doing some very interesting stuff there.

Dub

A lot of what you're saying

niklp's picture

A lot of what you're saying about the interface there is easily overridden with sensible theming. There's some work going on on this with the Mobile theme. If there was a simple way to determine that the site was being accessed by a mobile user, we'd be laughing. Of course, you can use a subdomain... I guess it will end up going this way. Drupal stands to make more dents when mobile theming takes a jump forward. I suggest that new theming features in D6 might make this a more accessible goal.

Kineta Systems - Web Development in Nottingham, UK

mobile detect

Dublin Drupaller's picture

Hi NikLP...

Just thought I'd mention 2 solutions I came across recently....

The first one is a function (explanation of how the function works | Demo of the function at brainhandles.com) which, according to brainhandles.com, is 94.34% effective when tested against the WURFL database of mobile browser user agent IDs.

function checkmobile(){

if(isset($_SERVER["HTTP_X_WAP_PROFILE"])) return true;

if(preg_match("/wap.|.wap/i",$_SERVER["HTTP_ACCEPT"])) return true;

if(isset($_SERVER["HTTP_USER_AGENT"])){

$uamatches = array("midp", "j2me", "avant", "docomo", "novarra", "palmos", "palmsource", "240x320", "opwv", "chtml", "pda", "windows\ ce", "mmp\/", "blackberry", "mib\/", "symbian", "wireless", "nokia", "hand", "mobi", "phone", "cdm", "up.b", "audio", "SIE-", "SEC-", "samsung", "HTC", "mot-", "mitsu", "sagem", "sony", "alcatel", "lg", "eric", "vx", "NEC", "philips", "mmm", "xx", "panasonic", "sharp", "wap", "sch", "rover", "pocket", "benq", "java", "pt", "pg", "vox", "amoi", "bird", "compal", "kg", "voda", "sany", "kdd", "dbt", "sendo", "sgh", "gradi", "jb", "\d\d\di", "moto");

foreach($uamatches as $uastring){
if(preg_match("/".$uastring."/i",$_SERVER["HTTP_USER_AGENT"])) return true;
}
}
return false;
}

Note: to exclude iPhones if you're happy with how safari on the iPhone displays regular (not optimised for Mobile) pages add this to the top of the function:

if(preg_match("/iphone/i",$_SERVER["HTTP_USER_AGENT"])) return false;

To test the script, the opera-mini emulator is handy: http://www.operamini.com/demo/

A more advanced mobile device detection using WURFL is available at the (Drupal driven) dev.mobi website:

http://dev.mobi/?q=node/18

hope that helps

Dub

Mobile Platform Detection

jamesJonas's picture

Dub,
Fantastic, this looks very promising. [My posting below on this issue got kicked to the wrong reply area, which seems to happen during preview, my bad.]

I'm thinking how this may be customized to differentiated between mobile phone browsing platforms. Anyone have a list of words that are more platform specific to smartphone browsers/phones like webkit, android, s60, opera mini 4.0, mobile firefox.? It's time for me to scrape the logs.

Impact: If we can auto detect the more advance mobile browser platforms, then the road to Drupal Mobile is a bit less bumpy.

Three Tiers:
(1) PC Browsers -> Standard Drupal
(2) Simple Mobile browsers -> simplified Drupal UI (HTML, no css, no javascript, WAP 1.0)
(3) Advanced Mobile browsers -> Full featured Drupal with Mobile layout and enhancements (css, javascript, WAP 2.0...)

James

Mobile Themes and Device Discovery

jamesJonas's picture

Mobile Themes

I took my standard theme, WhiteJazz by RoopleTheme.com and forked it to MobileTheme. My goal was a consistent user experience between by desktop and mobile sites. This means I still have a lot of cleanup to do before I would consider it nice lean and mean. I'll of course be pushing the limits on what page elements I can override. That being said, my core point is that Drupal Mobile would be enhanced if module developers used mobile emulators to check their screen footprint. I'm interested in other work on a mobile theme, but I found most of it was focused fitting Drupal onto the earlier browsers (WAP 1.0) rather than taking advantage of WebKit, Opera Mini 4.0 and Mobile Firefox features (css, javascript). But then again, things are moving fast, so tell me more.

Device Discovery

Yep, this is a very tough one. Some early thoughts:

Rewrites My environment has a Squid cache in the front end, meaning intelligent rewrite needs to be perform before the cache. I do have a high speed redirector, but my work to date has been on URL rewrites, I'll need to investigate if I can sniff the log event (search of Android for example) to perform the redirect. None of these solutions are great. Any thoughts?

User Initiated I was thinking that an icon at the top left of the screen, a link or a menu item may provide a PC to Mobile site switch. This is a very simple rewrite, FatAtlas.com <-> FatAtlas.mobi . The mobi_loader is taken care of the switch in themes, but settings.php may also be used. This may be the short term solution until something more elegant can be created. As I'm running a multisite farm, this solution works better for me in the short term as every domain name (1k) can have a single mobile equivalent (fatatlas.mobi). This is similar to my Permalink solution. I still need to perform some work on single sign-on, when the user passes from on domain name to another. My last investigation into the modules that perform this function gave me pause, due to scalability issues. Time to take another look.

Google Android Market Security

AleksandraSekar's picture

Google's always been that way with bugs and errors. Instead of jumping in and manually fixing it when they could, they turn to their algorithms and slowly tweak and tweak until years later it's finally fixed. I remember when content targeting ads were new and wildly inaccurate; and when google bombing was the rage (that took 7 years to quash)...
India's sub-$50 android tablet claims 1.4 million orders in two weeks. check it out at engadget.com. We've been hearing about malware in the Android market for three years now and the above solution is a good start, but it isn't over yet.

Mobile

Group organizers

Group categories

Mobile

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: