Thanks all.
The document explains many. Unfortunately I still failed :(
I can see provider in context-commander now, it names 
"session:com.intel.meego.provi...@contextkit-dbus"
After a while, commander reports:

2010-03-25 09:22:41 [libcontextsubscriber] WARNING [provider.cpp:267:void 
ContextSubscriber::Provider::onPluginSubscribeFailed(QString, QString)] 
"Screen.IsCovered" "Did not receive a reply. Possible causes include: the 
remote application did not send a reply, the message bus security policy 
blocked the reply, the reply timeout expired, or the network connection was 
broken."-
2010-03-25 09:22:41 [libcontextsubscriber] WARNING [provider.cpp:267:void 
ContextSubscriber::Provider::onPluginSubscribeFailed(QString, QString)] 
"Screen.TopEdge" "Did not receive a reply. Possible causes include: the remote 
application did not send a reply, the message bus security policy blocked the 
reply, the reply timeout expired, or the network connection was broken."

From d-feet, I can see bus name "com.intel.meego.provider", strangely there is 
nothing in "Object Paths"! however, context-provider-example rightly register 
its paths, I can see "/org/maemo/contextkit/Example/Count" ... 
I tried to address the issue in source of contextkit, it seems 
ServiceBackend::registerProperty will throw out error if failed registers a 
object path, but I didn't see that.
I have to admit I am not familiar with DBUS, could you give me some tips? The 
API of contextkit is very simple, it hard finds what I missed. Thank you in 
advanced.

> -----Original Message-----
> From: Marius Vollmer [mailto:[email protected]]
> Sent: Wednesday, March 24, 2010 2:32 PM
> To: Zhang, Xing Z
> Cc: meego-dev
> Subject: Re: Context provider (Connecting to deprecated signal)
> 
> "ext Zhang, Xing Z" <[email protected]> writes:
> 
> >          I am trying to write a provider for properties “Screen.TopEdge”
> and
> > “Screen.IsCoevered”. When provider starting, it complains “Connecting to
> > deprecated signal QDBusConnectionInterface::serviceOwnerChanged
> > (QString,QString,QString)”.
> 
> As Rusty has said, this is very likely not the reason why things don't
> work for you.
> 
> > From the contextkit-commander, TopEdge/IsCoverded show UNKNOWN and
> no
> > provider listed in last column.
> 
> This means that no provider was declared for the property.  You need to
> drop a file into /usr/share/contextkit/providers and run
> update-contextkit-providers.  See here for more details:
> 
> 
> http://zagadka.vm.bytemark.co.uk/docboy/contextkit-doc/html/context-provid
> ers.html
> 
> Your file must be named "com.intel.meego.provider.context" and it should
> probably contain this:
> 
>     <provider bus="session"
>               service="com.intel.meego.provider">
>       <key name="Screen.TopEdge"/>
>       <key name="Screen.IsCovered"/>
>     </provider>
> 
> See "Providing core properties" for why there is no type and
> documentation in your declaration.
> 
> 
> Also have a look at the example provider here:
> 
>      http://maemo.gitorious.org/maemo-af/contextkit-provider-example
> 
> (I guess we should clean that example up a bit, it has accumulated some
> cruft from earlier versions...)
_______________________________________________
MeeGo-dev mailing list
[email protected]
http://lists.meego.com/listinfo/meego-dev

Reply via email to