kivy & plyer 通知错误
Posted
技术标签:
【中文标题】kivy & plyer 通知错误【英文标题】:kivy & plyer Notification Error 【发布时间】:2016-06-11 13:52:04 【问题描述】:我正在尝试在 kivy 制作的 android 应用中发出通知,如下所示:
from plyer import notification
notification.notify('test tiltle','scanning started')
但我每次都会在 logcat 中收到此错误
chnhack/in/web_sqli/R$drawable'
I/python (28327): Exception in thread Thread-1:
I/python (28327): Traceback (most recent call last):
I/python (28327): File "/root/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/threading.py", line 552, in __bootstrap_inner
I/python (28327): File "/root/.buildozer/android/app/main.py", line 165, in run
I/python (28327): File "/root/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/site-packages/plyer/facades/notification.py", line 21, in notify
I/python (28327): File "/root/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/site-packages/plyer/facades/notification.py", line 26, in _notify
I/python (28327): NotImplementedError: No usable implementation found!
I/python (28327):
D/dalvikvm(28327): threadid=11: thread exiting, not yet detached (count=0)
D/dalvikvm(28327): threadid=11: thread exiting, not yet detached (count
如果有人帮助我,那就太好了
【问题讨论】:
【参考方案1】:阅读此example 和实际code 以获取通知可以解决您的问题。 notify()
期望通过 kwargs:icon_android
,title
,message
notification.notify(title: 'test tiltle',message: 'scanning started')
对于类似的问题使用更实时的询问,目前最好的是IRC。
【讨论】:
但我不知道如何在通知中给出图标...每次都需要默认的 kivy 图标 你使用realpath
吗?只需打印路径,直到找到正确的路径,因为如果找不到 png,kivy 会使用默认路径
哦,抱歉,现在我看到 icon_android
和 app_icon
都被使用了。我把它们混在一起了。使用app_icon
,因为icon_android
来自jnius 的autoclass
。
但它仍然无法正常工作......我所做的是 icon = "icon.png";kwargs="message":message_variable,"title":title_variable,"app_icon":icon_variable 这个是我的 kwargs....然后我在 amdroid 上部署,但它仍然无法正常工作
我仍然认为你的图标路径不好。我一直在将资产编码到像os.path.dirname(os.path.abspath(__file__))+'/icon.png'
这样的东西中。如果这也无济于事,请在IRC 上提问以上是关于kivy & plyer 通知错误的主要内容,如果未能解决你的问题,请参考以下文章
Kivy--Plyer--Android--在应用未运行时发送通知
GPS 未针对您的平台实施 - Kivy / Plyer / PyCharm
Kivy Android plyer.gps on_location 回调从未被调用