एक संकेतक आइकन के साथ कौन सा एप्लिकेशन जुड़ा हुआ है, यह कैसे पता चलता है?


10

यह Ubuntu 10.04 में ऐसा करने के लिए तुच्छ है। प्रश्न Ubuntu 12.04 के लिए विशिष्ट है।

फॉलोअप में कार्यान्वयन विवरण के साथ dbus का उपयोग करने वाली एक रचना किसी कारण से गायब है, इसलिए एक अहंकार ने उत्तर (तुच्छ लेकिन कुछ श्रमसाध्य प्रक्रिया को यहां समझाया गया है ) की रचना की ।

के बारे में यह प्रतिक्रियाgdbus उपयोगी है, लेकिन यह उत्तर सुपर उपयोगी है - (अर्ध-प्रणाली ओवरहेड अब एक स्वीकार्य ~ 10% तक कम हो गई है)।

कुछ प्रासंगिक संदर्भ
(src: संकेतक और सिस्टम ट्रे के बीच अंतर क्या है? इसका उत्तर है : यहां संकेतक के लिए प्रलेखन है:

अनुप्रयोग संकेतक | उबंटू ऐप डेवलपर
लिबेंडिनेट संदर्भ मैनुअल
लिबैपिंडिलेटर संदर्भ मैनुअल

भी

रेफरी: इंडिकेटर आइकन बनाने वाले एप्लिकेशन की पहचान कैसे की जा सकती है? (यह लिंक अनुचित रूप से अनुप्रेषित करता है /ubuntu/184589/how-can-menu-bars-that-require-a-right-click-be-activated-like-ubuntu-versions )
बुकमार्क: कैसे करता है उबंटू 12.04 में एक संकेतक आइकन के साथ कौन सा एप्लिकेशन जुड़ा हुआ है?
नीचे दिए गए कारणों और समस्याओं के लिए एक गंभीर सवाल है और जिसके लिए एक महत्वपूर्ण निवेश किया गया है और उपचारात्मक उद्देश्यों के लिए आवश्यक है।


रेफरी की समीक्षा। ऑर्केस्ट्रेटेड रिज़ॉल्यूशन खोजने के लिए ...
(एक संकेतक एपी। संकेतक की आवश्यकता हो सकती है)


यह सही क्लिक के साथ कुछ नहीं करना है (यह करता है?)।

Ubuntu 12.04 में एक संकेतक के आइकन को शीर्ष पैनल पर प्रकट होने के लिए जिम्मेदार प्रोग्राम के साथ कैसे मिलान किया जा सकता है?

चल रहे अनुप्रयोगों की सूची में सभी प्रक्रियाओं का उपयोग किया जा सकता है System Monitor

एक संकेतक के लिए सही मिलान प्रक्रिया कैसे पाई जाती है?

उप-संकेतक अनुप्रयोगों की पहचान कैसे की जाती है? ये एक संकेतक ड्रॉप-डाउन मेनू के घटकों से जुड़े हैं। (यह एक अलग सवाल था और काफी स्वाभाविक रूप से प्रगति का अनुसरण करता है। इसे यहाँ शामिल किया गया है क्योंकि यह स्पष्ट है कि उप या संकेतक अप्स को आसानी से ट्रैक करने का कोई प्रावधान नहीं है।)

कुछ अपेक्षित डेमॉन और पृष्ठभूमि कार्यों जैसे nm-एप्लेट के साथ मिलाया जाता है - न केवल Xorg और compiz को अत्यधिक CPU समय की आवश्यकता होती है, बल्कि उनके प्रवेश को भी साथ आना पड़ता है! समस्या को और बढ़ाते हुए - हमारे गणना बाउंड कार्य अब क्षेत्र में प्रभावी रूप से काम नहीं करते - कम बैटरी जीवन, कस्टम एपी के लिए सीपीयू समय कम करना आदि - और यह सब बैटरी एपी के साथ क्या हो रहा है की एक परीक्षा से उपजी है। संकेतक - यह एक अस्थिर, आलंकारिक या बेकार पेशी नहीं है, लेकिन उत्पादन वातावरण में इसके उपरि के नकारात्मक प्रभाव को कम करने के लिए 12.04 की विश्वसनीय तैनाती के परिणाम हैं) कस्टम ap.s आदि के लिए सीपीयू समय घटाया - और यह सब बैटरी एपी के साथ क्या हो रहा है की एक परीक्षा से उपजी है। संकेतक - यह एक अस्थिर, आलंकारिक या बेकार पेशी नहीं है, लेकिन उत्पादन वातावरण में इसके उपरि के नकारात्मक प्रभाव को कम करने के लिए 12.04 की विश्वसनीय तैनाती के परिणाम हैं) कस्टम ap.s आदि के लिए सीपीयू समय घटाया - और यह सब बैटरी एपी के साथ क्या हो रहा है की एक परीक्षा से उपजी है। संकेतक - यह एक अस्थिर, आलंकारिक या बेकार पेशी नहीं है, लेकिन उत्पादन वातावरण में इसके उपरि के नकारात्मक प्रभाव को कम करने के लिए 12.04 की विश्वसनीय तैनाती के परिणाम हैं)

(मुझे बैटरी संकेतक के साथ एक समस्या है - इसमें कभी-कभी% और अन्य समय hh है: मिमी - एपी को जानने के लिए आवश्यक है। & v। उसी को नियंत्रित करने के बारे में अधिक जानकारी प्राप्त करने के लिए। ditto: अन्य संकेतक aps के साथ समस्याएँ हैं। : NM बनाम iwlist / iwconfig संघर्ष, बीटी एपी बनाम आरएफ स्विच, बैटरी एपी। खराब बैटरी रनटाइम के लिए w / नो सस्पेंड / स्लीप, ... सूची आगे बढ़ती है)

विवरण:
मैं आवेदन संकेतक आईडी कैसे पा सकता हूं?

सुझाव है कि देख रहे हैं:
फ़ाइल: ///usr/share/indicator-application/ordering-override.keyfile

[Ordering Index Overrides]
nm-applet=1
gnome-power-manager=2
ibus=3
gst-keyboard-xkb=4
gsd-keyboard-xkb=5

जो बैटरी एप को हल करता है। पहचान, और संभवतः एनएम rf आइकन के लिए NetworkManager है, लेकिन लिफाफा, नीला दाँत और स्पीकर संकेतक एप्स। अभी भी एक रहस्य है। (इसके अलावा, आदेश सहसंबद्ध नहीं है।)

आप का मन है, Aboutएपी को खोजने के लिए विकल्प प्राप्त करने के लिए बस राइट क्लिक करने के लिए अतीत में यह सरल था । और वी। जानकारी।

के बारे में और के बारे में ब्राउज़िंग:

फ़ाइल: ///usr/share/indicator-application/ordering-override.keyfile

जांच की गई:
फ़ाइल: /// usr / शेयर / संकेतक
फ़ाइल: /// usr / शेयर / संकेतक / संदेश / आवेदन /
...

शायद? / शायद? मांगी गई जानकारी को
फ़ाइल में दफन किया जा सकता है : /// usr / शेयर / संकेतक

टिप्पणियों में एक संदर्भ दिया गया था:
संकेतक और सिस्टम ट्रे के बीच अंतर क्या है?
उस स्रोत से उद्धृत ...

दुर्भाग्य से डेस्कटॉप संकेतक अभी तक अच्छी तरह से प्रलेखित नहीं हैं: मुझे कोई विनिर्देशन डॉक्टर नहीं मिला ...

खैर ... वास्तविक दस्तावेज़
https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationIndicators#Summary
बहुत मदद नहीं करता है, लेकिन यह मौजूद जानकारी काफी जानकारी प्रदान करती है ...


और वह आवेदन है ...?
आमोस एनॉय

"बीटी संकेतक आमतौर पर ब्लूमैन (या समान) द्वारा उपयोग किया जाता है" - लेकिन मुझे वास्तव में कैसे पता है? शायद मैं "या समान" का उपयोग कर रहा हूं? यह मदद नहीं करता है - क्या आप मुझे बता सकते हैं कि मेरे सिस्टम की जांच करने के लिए कैसे स्पष्ट रूप से यह निर्धारित करना है कि प्रत्येक संकेतक के साथ कौन सा एप्लिकेशन जुड़ा हुआ है? एकता-पैनल-सेवा उक्त वातावरण के प्रकटीकरण के लिए ज़िम्मेदार है, लेकिन आबादी के अनुप्रयोग, जो प्रत्येक संकेतक के साथ जुड़े हैं, कैसे निर्धारित होते हैं?
अमोस एनॉय

जब सही। लक्षित चीजें हैं जैसे: किया bluetooth-applet --help (bluetooth-applet:25165): BluetoothApplet-WARNING **: Applet is already running, exitingजा सकता है - संदेश संकेतक एप क्या है? यह संभवत: मान लिया गया है कि यह ड्रॉप डाउन मेनू के लिए सामग्री है:file:///usr/share/indicators/messages/applications/
एमोस एनॉय

आपके द्वारा दिया गया उत्तर पुराना है, मैंने इसे अपडेट किया है, आशा है कि यह मदद करेगा।
जॉर्ज कास्त्रो ने

TQ - आशा है कि - संकेतक संरचना का एक अच्छा विचार प्राप्त करना
Amos Annoy

जवाबों:


3

एप्लिकेशन संकेतक सेवा में एक आंतरिक एपीआई है जो सभी संकेतकों की एक सूची को हथियाने की अनुमति देगा, जिसमें उनके DBus पते शामिल हैं। आप इस कमांड लाइन का उपयोग कर सकते हैं:

gdbus call --session --dest com.canonical.indicator.application --object-path /com/canonical/indicator/application/service --method com.canonical.indicator.application.service.GetApplications

सुपर-उपयोगी नहीं होने के कारण आपको कुछ वापस मिल जाएगा, क्योंकि यह एक प्यूसीडो-JSON प्रारूप में है। यदि आप एक स्क्रिप्ट लिखते हैं तो आप इसे एक पार्सर में खींच सकते हैं और इसके साथ काम कर सकते हैं। यदि आप इसे सिर्फ एक बार करने के बारे में उत्सुक हैं, तो बस पाठ के माध्यम से पढ़ें। आप एक ऐसे क्षेत्र की तलाश में हैं जो इस प्रकार है: :1.XXX यह संकेतक के लिए DBus पता है।

एक बार जब आपके पास संकेतक के लिए पता होगा तो आप DBus से पूछ सकते हैं कि उस संकेतक के लिए PID क्या है। आप :1.123इस तरह के पीआईडी ​​का अनुरोध करते हैं :

gdbus call --session --dest org.freedesktop.DBus --object-path / --method org.freedesktop.DBus.GetConnectionUnixProcessID :1.123

आपके पास अब PID होने के बाद आप /procप्रक्रिया के बारे में जानकारी मांग सकते हैं । उदाहरण के लिए यदि आप प्रोसेस नंबर लॉन्च करने के लिए कमांड का उपयोग जानना चाहते हैं तो आप 1कर सकते हैं:

cat /proc/1/cmndline

सौभाग्य!


मिठाई! - gdbusउच्च स्तरीय इंटरफ़ेस मौजूद होने की उम्मीद नहीं थी! - हालाँकि यह अभी तक एपीआई (एप्लीकेशन पैनल इंडिकेटर) नहीं है - लेकिन इसे "बनाना" मुश्किल नहीं होना चाहिए - उम्मीद है कि यह एक आसन्न सौदा होगा - PS सुपर स्वीट
Amos Annoy

2

1 पुनरावृति

qdbus --literal   com.canonical.AppMenu.Registrar                  \
                 /com/canonical/Unity/Panel/Service                \
                  com.canonical.Unity.Panel.Service.Sync           \
| sed -e 's/[^{]*{\(.*\)}\]/\1/' | sed -e 's/\[[^"]*/[/g'          \
| sed -e 's/\[\(\(\("[^"]*"\|[^,"]*\), \)\{4\}\)[^]]*,\([^,]*\)\]/[\4, \1]/g' \
| sed -e 's/\[\([^,]*\, \)\("[^"]*",\)/[    \1\2                  /g'  \
| sed -e 's/\[ *\(....,.\{24\}\) */[\1/g'  | sed -e 's/\], \[/]\n[/g'  | sort -n -k2

उत्पादन:

[  -1, "libprintersmenu.so",  "", "", "", ]
[   0, "libappmenu.so",       "0x9581b90", "", "_File", ]
[   1, "libappmenu.so",       "0x9582ad0", "", "_Edit", ]
[   2, "libappmenu.so",       "0x9583cf0", "", "_View", ]
[   3, "libappmenu.so",       "0x9585828", "", "_Search", ]
[   4, "libappmenu.so",       "0x9586da8", "", "_Tools", ]
[   5, "libappmenu.so",       "0x96575a0", "", "_Documents", ]
[   6, "libappmenu.so",       "0x96596e0", "", "_Help", ]
[ 200, "libmessaging.so",     "0x9238c7c", "indicator-messages", "", ]
[ 250, "libpower.so",         "0x9346c54", "indicator-power", "", ]
[ 300, "libapplication.so",   "0x86a6368", "bluetooth-manager", "", ]
[ 450, "libapplication.so",   "0x930f650", "nm-applet", "", ]
[ 500, "libsoundmenu.so",     "0x9346cac", "indicator-sound", "", ]
[ 550, "libdatetime.so",      "0x931581c", "indicator-datetime", " 4:59:07 PM", ]
[ 600, "libsession.so",       "0x92ed45c", "indicator-session-devices", "", ]

2 पुनरावृति

(w / संघ की पुष्टि करने वाले चिह्न)

qdbus --literal   com.canonical.AppMenu.Registrar                  \
                 /com/canonical/Unity/Panel/Service                \
                  com.canonical.Unity.Panel.Service.Sync           \
| sed -e 's/[^{]*{\(.*\)}\]/\1/' | sed -e 's/\[[^"]*/[/g'          \
| sed -e 's/\[\(\(\("[^"]*"\|[^,"]*\), \)\{4\}\)\([^,]*, \)\{3\}\("[^"]*"\)[^]]*,\([^,]*\)\]/[\6, \1 <\5>]/g' \
| sed -e 's/<"">\]/]/g'  | sed -e 's/<"\([^"]*">\]\)/<img src="data:image\/png;base64,\1/g'    \
| sed -e 's/\], \[/<\/td><\/tr>\n<tr><td>/g'  | sort -n -k2 | sed -e 's/, /<\/td><td>/g'        \
| sed -e 's/\[/<html><table>\n<tr><td>/' | sed -e 's/\]/<\/td><\/tr>\n<\/table><\/html>/' >hapi.html

उत्पादन:

hapi.png

यहाँ hapi.html (w / o सेल ब्लैक बैकग्राउंड) है:

<tr><td> -1</td><td>"libprintersmenu.so"</td><td>""</td><td>""</td><td>""</td><td> </td></tr>   /*  oops  */
<html><table>
<tr><td> 0</td><td>"libappmenu.so"</td><td>"0x8b12b38"</td><td>""</td><td>"_File"</td><td> </td></tr>
<tr><td> 1</td><td>"libappmenu.so"</td><td>"0x8a1cd30"</td><td>""</td><td>"_Edit"</td><td> </td></tr>
<tr><td> 2</td><td>"libappmenu.so"</td><td>"0x8b01b28"</td><td>""</td><td>"_View"</td><td> </td></tr>
<tr><td> 3</td><td>"libappmenu.so"</td><td>"0x8b35700"</td><td>""</td><td>"_Search"</td><td> </td></tr>
<tr><td> 4</td><td>"libappmenu.so"</td><td>"0x8b11350"</td><td>""</td><td>"_Terminal"</td><td> </td></tr>
<tr><td> 5</td><td>"libappmenu.so"</td><td>"0x8b142f0"</td><td>""</td><td>"Ta_bs"</td><td> </td></tr>
<tr><td> 6</td><td>"libappmenu.so"</td><td>"0x8b37528"</td><td>""</td><td>"_Help"</td><td> </td></tr>
<tr><td> 200</td><td>"libmessaging.so"  </td><td>"0x85c8c7c"</td><td>"indicator-messages"   </td><td>""</td><td> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABHNCSVQICAgIfAhkiAAAAd9JREFUOI3t0UFP02AcBvDnfRvMSDzwBUy2CpZwwCN6Mc4FE8iQs9/BCzOytWxzm4EYMWEQMMHExE+gF+JxnuwYRtcWNlrcIurttRuY7WLCeD0V6+iE4cmEJ2nS9/n3/0ubAuf5b0Ocm92KkeEcUQAXzmj9BMFioH84CgDUaTnnSqlsrtXre9vdirVafbtUNt/wQz7ldPT3mAii6B9MpWYV9t02TosyZusPU7MxUfRLhJAeDxjo9fmGstknsWR6TrHtk3HGbF1OpOWlxXml1+cbcs9o+8OU0pGVpadxOfHorzhjth6dScaeP8smKKUjxxyvJYHSa6vLC8q0kpK9cMZsfSoiT79YXX4gCMJ1L8MTBoBms3kxErm3lc48ju/v/7Ccvl7bKyczczNy/H6p0Wj0ddo/yudPBneuwrucFgrdDFctbb1qaevB4I077/NvjT/6Hf1DeOz2xIaaK7p3O8IFNaePjgbHK5aWd7qKWVQlSbolSVKwYhbVo97SPk6GxyYKak5vh4kbBgBrp/pyoD9wiVIaOvEzAbRarfyXr992xYD/LgAEBoZJG6wfAEQ4DdYpnPMD8crVHsD184zN8ivOcfgPbMvY3HrtnIhrMgjgclvXlQygCsA8+8udp5v8AnS3+yjTJl0RAAAAAElFTkSuQmCC"></td></tr>
<tr><td> 250</td><td>"libpower.so"      </td><td>"0x86da454"</td><td>"indicator-power"      </td><td>""</td><td> <img src="data:image/png;base64,. GThemedIcon battery-charged battery-full-charged-symbolic battery-full-charged gpm-battery-charged gpm-battery-100-charging "></td></tr>
<tr><td> 300</td><td>"libapplication.so"</td><td>"0x86a6368"</td><td>"bluetooth-manager"    </td><td>""</td><td> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAWCAYAAAAW5GZjAAAABHNCSVQICAgIfAhkiAAAAchJREFUKJHNkc9LVFEUx7/3YUJF5EhgM6+GoBiEaNEy8g8ogihI2rSXYDIQNxW0EHEROdIsJkwEJ19kDWXRrjSKBgNzHO4d6um7b7xji9RZyFNxMVPvnjYpPXSyRYu+y3M+fL/nB/B/SjlipuTyW9v1jC0VhhgR61aycGNnGKTfZycGAeqplbCpOYd/N00z9jwz/FhJoZXkVwPOSoqEcvkZACAisizr64PBoUS1Ul354eubAdjzvOOk8bLkFM4BoKamfaHUvUSKGUZdMnm/OxBtmuapieybyTmHV4qzvFp0+JS082vxeNs1APu3LBqJRFo+ZscmlRTk2vn19njbdQAN211Dp9Ppwt49u+sBgBnGrtZLF74B8H6HGQDMz4uQX6FxX/tHGYz6crkswuGDJxljl48cOzEacPYr+gmRbh4YSHdprf2unju3FxaXuNZ6pOSKs4GBRzNWX2dHeweARsfOrQ7394ej0WjLTOFTuTjLFza4OgC42HolCWAFwDIAagyF6N3Yq/OMsQOvx9/erfE/wPmS86SdSygpdCrZ2wfgUE3YtfPrSgrKjDy0AByuCQLA9NSHzy+ePXoKIPZH8JdOA2j+G/Df6SfH0s58lIXOZQAAAABJRU5ErkJggg=="></td></tr>
<tr><td> 450</td><td>"libapplication.so"</td><td>"0x869f258"</td><td>"nm-applet"            </td><td>""</td><td> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABHNCSVQICAgIfAhkiAAAAvJJREFUOI3tkk9sVFUUxn/n3XmP6WBk/gBCojDTMJPSocNURJSV2qW6EKIkBaRRE5WYsCAahJCMbtREjEkTEzHRhmJFYnRhZGFMmhIWTUmpxVJDZpipmbSdMm1RoH2vnb53XTA11NSWrQm/3T0n35fvnHPhPv9bZLFiNptd4fPsmChvPaJCrqv9BlgAKGPGc+dmDNGTniEjjmMOJZPJ2SWNi8Ur4YrtbTPE26hFDIDKTGV22rFtd9atAChLmYHAyhrTVBaA1tozxJfXKnApFov9ucA4k8kYLXtfSAOPahFjfHxisr9vYLTtq/byhZ6eaWAO8KoaA/A1NTUFDjTvWlu/Jbk+EgmHRIurtdEbjdf3i4gWgKFc/zMa2XTr1tTUF1+2DbS2fl4CpgC7UCiYWt9OaI2lPNd1DXOitra+KCIKqAEC7x8/8vCePbuTln+FX/Cy0U3pTgEY6O/eXSpdnznwypu/Dg8Pl4cGB8NYbrPWulkgpcH3rxXe1JqLhkhHBf938Xi8kk7XPfTpiU8aIpFQTUP6ybPzO14HVDKZzI2X9+06aGg+0PCA57n2WHl8oDQ6VnAcx1bKp4LBVeE1qyPRYHBVQkR8CKN4HI0lUqeAMHdClBYcL5/9bb+gTzm2ff2Xzq6vT3zcen6oWBwB/qru2QD8wIONjakNh946+NTOJ7a/ZFpmUDR7o4lUx7zXghHPfHM2X7c5ceadd9/ryOVyfedOn765+fGGZ0XkaY1s0KLnxGNYoOuHn74/1/LqG92PNTb+fOzY4Rd/H7xa+M/vBgSAR4Brf2SvJDzcH4FaFidvoJ7fGE/mgBhQBKYXTVxtXAUolcfS4VAw0nupr729/duuzvNdZaUsY8eO7aHXX2tpSm/d8tzkjfE0MDivWSrx3awDUkAeGAHsat1fnSoKXAZKi4mXMv6HQvbyh8Dbd176o1h869HlNOpejH2WMusS8Z2O40ycPNn2WXfPxWvLae4pMbAS2AZooJe7jnSfZfkbe1wfX9DFYSoAAAAASUVORK5CYII="></td></tr>
<tr><td> 500</td><td>"libsoundmenu.so"  </td><td>"0x86da4ac"</td><td>"indicator-sound"      </td><td>""</td><td> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAWCAYAAADafVyIAAAABHNCSVQICAgIfAhkiAAAAudJREFUSIntkF1ok1cYx38njTW1rSkOZGjFK52fbKCCzsgWkIF4sV0IAxljIIiyi+mFCOLdwJuJn5tuQ7AVh1VX2Vjpqq6aZc5araZ5bWOak7dvl5W1YtOPtE1i3o+zC410Npoh1St/V+c8zzn/3zkPvOZVYEjtdyOunVRKuZ7uTSq8CP39900Unxmx9u1TkQdAT1z7skdqnwP4fKvfj3a0Depd4ZSut3knnnvmD/rD4XIjrgUNqQUK9dPjmQ0Kjuh6u+/atRt/trTerHW5RKWTc20pKlBKudIefkCxDnhPqXMlAIYMb++Wdz8A+O5E7RFQysra+wDzZG3d947j5EzT3FxU0KN3HBAu8WF+HwhEBIBp2rtQTn0iemfO4aPHfurru3+7tHTa2kT0zpxgMCiTyWSHx+N5W0o5fZKgO6b9ZkhNGVJTKPVFIfGVwB91QoiKtGV/AqT+SvReAlypdHY9YI2OjXcKIdy58eElhX7gLxQ6kWis6xxAOpNZCWA6uRDAWDq9CMAyzV6AgcGBec8d0bOIROISQCBmA1SWlQ8CWLZVCSBEyQiAbVtVLyQ4dGjfTIBMNpMC8FbN8gJksw9HATye0hkAIyOj2UmCZDIZKSZQtrXh0dnBKEBlxYxlAAPJ4e5HAs+bAGOZ8b78HXd+sWqNfyvwBsCvDfXbFr21YOPTglL39L22bWUaG5ouAFSUl3/kOE6usakxCFBW5lnuOI5VU1P35LHuCfdb8otNH3+aaGr4saq6eu7aiYLW1ps/9yQSyeMnakKGDK8GsaL3n77rp06dNXS9zYvlXjk0NHyvubl5qNg0xNKFC323Wq7ebbsRiADicX0+MBtARkPt3THN3rN752YAGQntMKSmzp+p+apYeJ4SYA3wbqHmxcYLp7/9+uBBwPt3Z+eseDT0IHbvdsrv9y/9v4JiLAbmAehd7fWG1NTxbw7s579jnxo6Qi2dVy//cgWonvLwx/iAd15W+HP5F1PVVGkwY49EAAAAAElFTkSuQmCC"></td></tr>
<tr><td> 550</td><td>"libdatetime.so"   </td><td>"0x86a581c"</td><td>"indicator-datetime"   </td><td>" 5:25:55 PM"</td><td> </td></tr>
<tr><td> 600</td><td>"libsession.so"    </td><td>"0x867cc5c"</td><td>"indicator-session-devices"</td><td>""</td><td> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABHNCSVQICAgIfAhkiAAAAlZJREFUOI3tlE9IVFEUxr/z/tgkKBHpJhEkRF4LV1GOIC2yRcxEEmGLJHAIhXCjCzdu3BVBC3VTi9rr2iwt9Q0ElTmO8yZtnOv4JKHIHi7m5XvlDJ4WOTA8549uow/u4p7znd89F869wH8dV6Yw2BQGH9UvFQomEokqIZZqyhWvr8dqE4lE1ZHAQojqCun3tMSKLkSsblPEQ16PmTS6hYjVSfvQVfr1SghRXRacTEYrHcepkQjnFdAmg58daofwXAFtEpHmum5tMhmtLAsOBDp3+geGBpk5C0B2XPe71+O47jYAmZmz/QNDg4FA505ZMIC9sZGH9USkOLvO1zt37/V6Dd3d93udXecbESmjIw/qAOwdBQxmdAHAm/nwk+Xl+JQ3vxCJTM3Nh58CAIO6CjGU/I13nCLRpXEAGQBoaGy+nn+r2NKniWDw2vBJn+9irq6hsZlKdpxTS8vlH3nbyYMFAGhrb98uVetVEEAw8iG8agqDP8cXbhYzrsYXbpvC4MX3+mquLj/v7XgSwGQqtfESABRVeWSa0VNe6NbKyukKVX0MAKnUxgvvbQqBAQBzs2/HmTmryMo5zsgfzXWj4+9rFNUbInYrq2YNWZbPMnM2rL+bKMQgb2BtbfGMSuosETUzY5+o6OTsE0FiZiPDmStNTReskh3regTptC3Z9s8voZ6+0PTr2THLsoxc3rIsY2ZmbjTU0xeybXsrnbZJ1yOFzj4kRdO0q62tl24A8AGoB+DP+938BzFfW5u/Q9O0dnjGtiQcQEV+oMi3eeI40GI6NFL/lv4A7ogQZ4Yx+nYAAAAASUVORK5CYII="></td></tr>
</table></html>

पुष्टि: [क्रूड] प्रति के रूप में आइकन छवि डेटा है data:image/png;base64,[crud]

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAWCAYAAADafVyIAAAABHNCSVQICAgIfAhkiAAAAudJREFUSIntkF1ok1cYx38njTW1rSkOZGjFK52fbKCCzsgWkIF4sV0IAxljIIiyi+mFCOLdwJuJn5tuQ7AVh1VX2Vjpqq6aZc5araZ5bWOak7dvl5W1YtOPtE1i3o+zC410Npoh1St/V+c8zzn/3zkPvOZVYEjtdyOunVRKuZ7uTSq8CP39900Unxmx9u1TkQdAT1z7skdqnwP4fKvfj3a0Depd4ZSut3knnnvmD/rD4XIjrgUNqQUK9dPjmQ0Kjuh6u+/atRt/trTerHW5RKWTc20pKlBKudIefkCxDnhPqXMlAIYMb++Wdz8A+O5E7RFQysra+wDzZG3d947j5EzT3FxU0KN3HBAu8WF+HwhEBIBp2rtQTn0iemfO4aPHfurru3+7tHTa2kT0zpxgMCiTyWSHx+N5W0o5fZKgO6b9ZkhNGVJTKPVFIfGVwB91QoiKtGV/AqT+SvReAlypdHY9YI2OjXcKIdy58eElhX7gLxQ6kWis6xxAOpNZCWA6uRDAWDq9CMAyzV6AgcGBec8d0bOIROISQCBmA1SWlQ8CWLZVCSBEyQiAbVtVLyQ4dGjfTIBMNpMC8FbN8gJksw9HATye0hkAIyOj2UmCZDIZKSZQtrXh0dnBKEBlxYxlAAPJ4e5HAs+bAGOZ8b78HXd+sWqNfyvwBsCvDfXbFr21YOPTglL39L22bWUaG5ouAFSUl3/kOE6usakxCFBW5lnuOI5VU1P35LHuCfdb8otNH3+aaGr4saq6eu7aiYLW1ps/9yQSyeMnakKGDK8GsaL3n77rp06dNXS9zYvlXjk0NHyvubl5qNg0xNKFC323Wq7ebbsRiADicX0+MBtARkPt3THN3rN752YAGQntMKSmzp+p+apYeJ4SYA3wbqHmxcYLp7/9+uBBwPt3Z+eseDT0IHbvdsrv9y/9v4JiLAbmAehd7fWG1NTxbw7s579jnxo6Qi2dVy//cgWonvLwx/iAd15W+HP5F1PVVGkwY49EAAAAAElFTkSuQmCC

आदर्श रूप में, HTML के बजाय, एक एकीकृत एचएपीआई आइकन पहचानकर्ता एपी के साथ संकेतक पैनल को पॉप करने वाली एक बैश स्क्रिप्ट, जिसमें निवासी एप्स संस्करण शामिल थे, संस्करण विशिष्ट जानकारी को अलग करने की सुविधा प्रदान करेगा।
जॉर्ज रोजवेल

रोलिंग रैंट्स 2 तरीकों से प्रकट होते हैं - दूसरा तरीका यहां 1 पर कृत्रिम भाषा के साथ, प्राकृतिक भाषा के साथ है और इसके परिणामस्वरूप उपद्रव, जलन या झुंझलाहट है, जो आमतौर पर गुमनाम (कष्टप्रद) (यानी-बीमार, गैर-वातानुकूलित, अज्ञात एपी के संस्करणों से पहले से मौजूद है)। बेनामी तरीके से) इस प्रकार अहंकार को
बदलो

नोट: इंडिकेटर-पॉवर आइकन फ़ील्ड थोड़ा विस्की और अपरंपरागत है? अन्य
एप्स

2

दुर्भाग्य से -

gdbus call --session --dest com.canonical.indicator.application                \
             --object-path /com/canonical/indicator/application/service        \
                   --method com.canonical.indicator.application.service.GetApplications

सभी इंडिकेटर आइकनों या उनके सब-इंडीकेटर्स को आसानी से एन्यूमरेट नहीं करता है। MI (मैसेजिंग इंडिकेटर) मेन्यू में कई सब-इंडिकेटर कम्युनिकेशन एप्स के साथ इंटरफेस होता है। सूचीबद्ध नहीं हैं इसके अलावा पावर, वॉल्यूम और क्लॉक इंडिकेटर जानकारी गायब हैं।

qdbusउपयोग करने के लिए सरल है और d-feetऐसा करने के लिए एक GUI प्रदान करता है, साथ ही आसानी से संपत्ति मूल्यों को सूचीबद्ध करता है।

qdbusनिम्नानुसार उपयोग करें :

qdbus  --literal | sort

com.canonical.indicator.applicationआउटपुट में w / nl चुनने के लिए ट्रिपल क्लिक करें

...  
:1.97  
:1.98  
 ca.desrt.dconf  
 com.canonical.AppMenu.Registrar  
 com.canonical.hud  
 com.canonical.indicator.application  
 com.canonical.indicator.datetime  
 com.canonical.indicator.messages  
 com.canonical.indicator.printers
 com.canonical.indicator.session
 com.canonical.indicator.sound
 com.canonical.Unity
 ...  

अगले कमांड को bash historyअपरोइट रिपीट कमांड ( | sort केवल छोड़ने के लिए हटाएं qdbus --literal) के साथ लिखें और कमांड को पूरा करने के लिए मध्य माउस बटन दबाएं:

qdbus  --literal  com.canonical.indicator.application

ट्रिपल अंतिम पंक्ति पर क्लिक करें

/
/org
/org/ayatana
/org/ayatana/indicator
/org/ayatana/indicator/service
/com
/com/canonical
/com/canonical/indicator
/com/canonical/indicator/application
/com/canonical/indicator/application/service

कम्पोज़ करने के लिए रिपीट हिस्ट्री अपरो, स्पेस बार और मिडिल माउस बटन दबाएं:

qdbus  --literal  com.canonical.indicator.application  /com/canonical/indicator/application/service

आउटपुट में वांछित विधि का चयन करने के लिए डबल क्लिक करें और कमांड बनाने के लिए अपरो, स्पेस बार और मध्य माउस बटन दबाएं और इसे चलाने के लिए एंटर दबाएं। (इस उदाहरण में स्पष्टता के लिए लाइन को जोड़ा जाता है):

qdbus  --literal  com.canonical.indicator.application                \
                 /com/canonical/indicator/application/service        \
                  com.canonical.indicator.application.service.GetApplications

यह केवल बीटी और एनएम सूचक सूचना (बहुत सुंदर है जो यहां प्रदर्शनी के लिए मुद्रित है)

[Argument: a(sisossssss)
  {[Argument: (sisossssss)
    "bluetooth-active", 
    0, 
    ":1.155",
    [ObjectPath: /org/ayatana/NotificationItem/bluetooth_manager/Menu],
    "",
    "",
    "",
    "Bluetooth: On",
    "bluetooth-manager",
    "Bluetooth"],
    [Argument: (sisossssss) 
    "nm-signal-75", 
    1, 
    ":1.21", 
    [ObjectPath: /org/ayatana/NotificationItem/nm_applet/Menu], 
    "", 
    "", 
    "", 
    "Wireless network connection 'office WiFi 1' active: office WiFi (77%)", 
    "nm-applet", 
    "Network"]
  }
]

अन्य संकेतकों को अन्य com.canonical.indicator. ...इंटरफेस (शुरुआत में सूचीबद्ध) के रूप में संदर्भित किया जाता है , हालांकि यह संभवतया आवश्यक है लेकिन उप-मेनू संकेतक एप्स अभी भी अज्ञात हैं:

qdbus --literal   com.canonical.AppMenu.Registrar               \
                 /com/canonical/Unity/Panel/Service             \
                  com.canonical.Unity.Panel.Service.Sync

हालांकि बहुत अधिक क्रूड है (संभवतया छंटाई और छंटनी का आउटपुट आइकन है):

[Argument: a(ssssbbusbbi) {
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9733fe0", "", "_File", true, true, 0, "", false, false, 0],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x97352e0", "", "_Edit", true, true, 0, "", false, false, 1],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9737868", "", "_View", true, true, 0, "", false, false, 2],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9738920", "", "_Search", true, true, 0, "", false, false, 3],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9739e10", "", "_Terminal", true, true, 0, "", false, false, 4],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x973c070", "", "Ta_bs", true, false, 0, "", false, false, 5],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x973d6a0", "", "_Help", true, true, 0, "", false, false, 6],
[Argument: (ssssbbusbbi) "libapplication.so", "0x90cdcd0", "bluetooth-manager",  "", false, false, 1, "<... crud ...>", true, true, 300],
[Argument: (ssssbbusbbi) "libapplication.so", "0x8e861a8", "nm-applet",          "", false, false, 1, "<... crud ...>", true, true, 450],
[Argument: (ssssbbusbbi) "libprintersmenu.so", "", "", "", false, false, 0, "", false, false, -1],
[Argument: (ssssbbusbbi) "libmessaging.so",   "0x8dabc7c", "indicator-messages", "", false, false, 1, "<... crud ...>", true, true, 200],
[Argument: (ssssbbusbbi) "libpower.so",       "0x8f0405c", "indicator-power",    "", true, false, 6,
   ". GThemedIcon battery-charged battery-full-charged-symbolic battery-full-charged gpm-battery-charged gpm-battery-100-charging ", true, true, 250],
[Argument: (ssssbbusbbi) "libsoundmenu.so",   "0x8f040b4", "indicator-sound",    "", false, false, 1, "<... crud ...>", true, true, 500],
[Argument: (ssssbbusbbi) "libdatetime.so",    "0x8e8881c", "indicator-datetime", " 1:16:10 AM", true, true, 0, "", false, false, 550],
[Argument: (ssssbbusbbi) "libsession.so",     "0x8e6045c", "indicator-session-devices", "", false, false, 1, "<... crud ...>", true, true, 600]}]

नोट: समाप्ति संख्या 600, 550, 500, 450, 300, 250, 200 सहसंबंधी, दाईं से बाईं ओर, अपने संकेतक आइकनों के साथ अप्स का मिलान।


दुर्भाग्यवश, बीमार अवस्थाओं की पहचान करने के लिए उनके संस्करण संख्याओं के साथ अप्स योग्य नहीं हैं और परिणामस्वरूप प्रणाली की गिरावट - यह मैन्युअल रूप से श्रम गहन है जो अपडाउनिंग इंडिकेटर aps w / उनके विशिष्ट संस्करणों को ट्रैक करने के लिए समझौता किए गए सिस्टम पर नज़र रखता है - क्या किसी को उनकी पहचान करने के लिए एक बेहतर तरीका पता है जब उनके बारे में मेनू गायब हैं?
जॉर्ज रोजवेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.