Document directory
- Tool 1: publish-send/publish-Monitor
- Tool 2: q6.
- Tool 3: D-feet
- Tool 4: qdbusviewer
- Conclusion
Middleware is the core of meego Process Communication. Let's take a brief look at where the meego system uses idea.
1. Start another application from one application. For example, if you want to call a contact in the Contact application, the meego system uses the queue for Process Communication.
2. The service framework is region-based. For example, if you see a multimedia file, click to submit a "playback file" request to search for an appropriate application to play the file.
3. Publish and subscriber systems. For example, if a battery message is displayed on a screen and subscribed to, notify the subscriber through notify when the power is changed.
4. Notification manager is also region-based. If a text message arrives, the notification Manger will prompt.
5. If you want to notify meego of applications that are interested in the system configuration file during the change, you also need to use the notice, such as theme changes.
6. the Bluetooth middleware bluez and the phone management system ofono process communication system are also based on.
Given the importance of parallelism, we can say "there is no meego without parallelism ". It is also necessary to know which of the following tools in meego can be used to locate and solve problems in the development process faster.
Prepare dbus_session_bus_address
Two zookeeper-based applications must be able to communicate with each other. They need dbus_session_bus_address.meego to start a zookeeper service process when starting its uxlaunch, you can get the value of dbus_session_bus_address from this process, and the application loaded through uxlaunch will inherit the environment variable. If it is started from the command line, you must set the environment variable before running your application to communicate with existing applications in the meego system. You can set the value as follows.
Export 'tr'''/N' </proc/$ (pidof duihome)/environ | grep dbus_session_bus_address'
Tool 1: publish-send/publish-Monitor
This is a tool released along with the release software package. It is encapsulated at the underlying level and is not described here. You can enter man sending-Send in the console command line to query detailed usage.
Tool 2: q6.
This tool is a command line tool based on QT. Usage:
Q6. [-- system] [-- literal] [servicename] [path] [Method] [ARGs]
Servicename the service to connect to (e.g., org. freedesktop. Reboot)
Path the path to the object (e.g .,/)
Method The method to call, with or without the interface
ARGs arguments to pass to the call
There are two parameters
-- System is connected to system-bus (sessions have two types of Bus: Session-bus and system-bus. Without parameters, session-bus is connected by default .)
-- Literal: print the original response information
* If the q6. command does not contain any parameters, all services on the worker will be listed.
* If the parameter contains only the service name, q6. all object paths are listed.
* If the q6. command gives the service name and the corresponding object path, the methods, signals, and available attributes on the path will be listed.
Example of q6.
List all services of session Bus
$ Q6.
List all services of System Bus
$ Q6. -- System
List all paths on com. Nokia. meego-im-uiserver Service
$ Qinicom. Nokia. meego-im-uiserver
Lists available methods in a path on com. Nokia. meego-im-uiserver service.
$ Qinicom. Nokia. meego-im-uiserver/org/maemo/duiinputmethodserver1
Call a specified service to specify a method in the path.
$ Qinicom. Nokia. meego-im-uiserver/org/maemo/duiinputmethodserver1 org. maemo. duiinputmethodserver1.showinputmethod
Tool 3: D-feet
D-feet is an application written in Python. You can use the following command to install it in meego:
# Zypper install D-feet
To view the registered movie service in the system, run the D-feet command.
# D-feet
To call the specified method, double-click the corresponding method.
If this method requires a parameter, the parameter option box is displayed.
Tool 4: qdbusviewer
Qdbusviewer is a development tool in the QT software package. You can use the following command to install qdbusviewer in meego:
# Zypper install QT-devel-Tools
To view which registered container service is in the system, run the qdbusviewer command.
# Qdbusviewer
If you want to call the corresponding method, right-click the method and you can see the word "call". Select
Conclusion
With these tools, you can not only conveniently know whether the services in the system are registered and running normally. It can also generate some unexpected events, such as receiving a simulated text message or dialing in by phone. In this way, you can debug some functions that require hardware support on the simulator. Middleware is the core of meego Process Communication. Let's take a brief look at where the meego system uses idea.
Article transferred from: http://software.intel.com/zh-cn/blogs/2011/03/08/meegodbus/