Reply
Thread Tools
Posts: 228 | Thanked: 145 times | Joined on Dec 2009
#1
Meet bug 6694. Brief summary: Nokia ships proprietary software on the N900 (Media Player) that exploits some internal API to achieve useful behavior. Open source developers of competing applications that want to use the same API ask for documentation and are told to wait... and wait... They propose a workaround, and then are told that their workaround is somehow bad with no further explanation...

Bad Nokia, bad. Document your APIs and stop screwing around.
 

The Following 10 Users Say Thank You to jacktanner For This Useful Post:
pycage's Avatar
Posts: 3,404 | Thanked: 4,474 times | Joined on Oct 2005 @ Germany
#2
It's not internal API. It's internal whitelisting of certain Nokia apps. FMRadio now is the only community app that has been whitelisted (with PR 1.1).
Several applications will now exploit this new backdoor for fixing their silent mode problems.

Do this in your code (C and C++ with glib):
Code:
g_set_application_name("FMRadio");
Or this (Python):
Code:
import gobject
gobject.set_application_name("FMRadio")
Don't forget to set your app window titlte the moment you create it, or the user will read "FMRadio" there.
No other ill side-effect are known so far.
__________________
Tidings - RSS and Podcast aggregator for Jolla - https://github.com/pycage/tidings
Cargo Dock - file/cloud manager for Jolla - https://github.com/pycage/cargodock
 

The Following User Says Thank You to pycage For This Useful Post:
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#3
Originally Posted by jacktanner View Post
Meet bug 6694. Brief summary: Nokia ships proprietary software on the N900 (Media Player) that exploits some internal API to achieve useful behavior. Open source developers of competing applications that want to use the same API ask for documentation and are told to wait... and wait... They propose a workaround, and then are told that their workaround is somehow bad with no further explanation...

Bad Nokia, bad. Document your APIs and stop screwing around.
Yes, that person getting annoyed was me.
Not because I'm told that my way of editing the policy file is wrong, but because I'm not told the "right" way, instead.
The "promised" libplayback documentation that we'd receive with the new Maemo 5 release (PR 1.1) has still hasn't appeared in http://maemo.org/api_refs/5.0/5.0-final/. I think it's because editing the policy file is the only way. It's said on there that the Media Player does it a different way and that D-Bus should be sniffed but I know that's not true as mafw-dbus-wrapper is listed in the policy file (which the Media Player uses). Not to mention my libplayback example causes no sound to be output from the app (libplayback complains in syslog about authorisation or something) until I edit the policy file allowing it.

P.S. I have nothing against the person but they really need to cut the **** and tell it like how it is.

Last edited by qwerty12; 2010-01-31 at 13:15.
 

The Following 5 Users Say Thank You to qwerty12 For This Useful Post:
Posts: 228 | Thanked: 145 times | Joined on Dec 2009
#4
Originally Posted by pycage View Post
It's not internal API. It's internal whitelisting of certain Nokia apps.
I think it's both. libplayback sounds like an internal API to me. It's not documented, and the official response is essentially "go reverse engineer it".

When Windows had APIs that only MS products knew how to use, MS got sued for abusing its monopoly. This is bad corporate behavior. If Nokia is selling a device with an open source OS and if it wants to create a community effort around this product, this kind of action is ... counterproductive.

Whitelisting of community applications is a short-term kludgeThe "pretend you're FMRadio" hack means the community has succeeded in spite of Nokia, but the price of that success is littering the codebase.

I realize I'm being very demanding of Nokia here - it's already open-sourced lots of things, and it's supporting the very forum where I'm writing this message. What I'm saying is that it's falling short of the high standard it's set for itself.
 

The Following User Says Thank You to jacktanner For This Useful Post:
Posts: 99 | Thanked: 325 times | Joined on Jul 2010
#5
Working libplayback code and "documentation" can be found here: http://talk.maemo.org/showthread.php?t=67157

qwerty12: It took me several hours to figure out how I have to set the "stream name" to get it working (all documented in the example code). My test app didn't have audio output for hours, too
 
jd4200's Avatar
Posts: 451 | Thanked: 424 times | Joined on Apr 2010 @ England
#6
Originally Posted by thomasjfox View Post
Working libplayback code and "documentation" can be found here: http://talk.maemo.org/showthread.php?t=67157

qwerty12: It took me several hours to figure out how I have to set the "stream name" to get it working (all documented in the example code). My test app didn't have audio output for hours, too
Just a heads up, you won't get a reply from qwerty12, he left in quite an....interesting storm a while ago
 

The Following User Says Thank You to jd4200 For This Useful Post:
Reply


 
Forum Jump


All times are GMT. The time now is 09:54.