Platform-independent wrapper for platform-dependent APIs
Project description
Plyer
Plyer is a platform-independent api to use features commonly found on various platforms, notably mobile ones, in Python.
How plyer works?
Plyer tries not to reinvent the wheel, and will call for external libraries to implement the api in the easiest way, depending on the current platform.
- On Android(python-for-android), pyjnius is used
- On iOS(kivy-ios), pyobjus is used
- On windows/mac/linux, commonly found libraries and programs will be used
Supported APIs
Platform | Android | iOS | Windows | OS X | Linux |
---|---|---|---|---|---|
Accelerometer | ✔ | ✔ | ✔ | ✔ | |
Audio recording | ✔ | ✔ | ✔ | ||
Barometer | ✔ | ✔ | |||
Battery | ✔ | ✔ | ✔ | ✔ | ✔ |
Bluetooth | ✔ | ✔ | |||
Brightness | ✔ | ✔ | ✔ | ||
Call | ✔ | ✔ | |||
Camera (taking picture) | ✔ | ✔ | |||
Compass | ✔ | ✔ | |||
CPU count | ✔ | ✔ | ✔ | ||
Devicename | ✔ | ✔ | ✔ | ✔ | |
Email (open mail client) | ✔ | ✔ | ✔ | ✔ | ✔ |
Flash | ✔ | ✔ | |||
GPS | ✔ | ✔ | |||
Gravity | ✔ | ✔ | |||
Gyroscope | ✔ | ✔ | |||
Humidity | ✔ | ||||
IR Blaster | ✔ | ||||
Keystore | ✔ | ✔ | ✔ | ✔ | ✔ |
Light | ✔ | ||||
Native file chooser | ✔ | ✔ | ✔ | ✔ | ✔ |
Notifications | ✔ | ✔ | ✔ | ✔ | |
Orientation | ✔ | ✔ | |||
Proximity | ✔ | ||||
Screenshot | ✔ | ✔ | ✔ | ||
SMS (send messages) | ✔ | ✔ | |||
Spatial Orientation | ✔ | ✔ | |||
Speech to text | ✔ | ||||
Storage Path | ✔ | ✔ | ✔ | ✔ | ✔ |
Temperature | ✔ | ||||
Text to speech | ✔ | ✔ | ✔ | ✔ | ✔ |
Unique ID | ✔ | ✔ | ✔ | ✔ | ✔ |
Vibrator | ✔ | ✔ | |||
Wifi | ✔ | ✔ | ✔ |
Installation
To use on desktop: pip install plyer
To use in python-for-android/kivy-ios: add plyer
to your requirements if needed.
Support
If you need assistance, you can ask for help on our mailing list:
- User Group : https://groups.google.com/group/kivy-users
- Email : kivy-users@googlegroups.com
Discord channel:
- Server : https://chat.kivy.org
- Channel : #dev
Contributing
We love pull requests and discussing novel ideas. Check out our contribution guide and feel free to improve Plyer.
The following mailing list and IRC channel are used exclusively for discussions about developing the Kivy framework and its sister projects:
- Dev Group : https://groups.google.com/group/kivy-dev
- Email : kivy-dev@googlegroups.com
IRC channel:
- Server : irc.freenode.net
- Port : 6667, 6697 (SSL only)
- Channel : #kivy-dev
License
Plyer is released under the terms of the MIT License. Please refer to the LICENSE file.
Contributors
This project exists thanks to all the people who contribute. [Contribute].
Backers
Thank you to all our backers! 🙏 [Become a backer]
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
Change Log
2.1.0 (2022-11-12)
Implemented enhancements:
Closed issues:
- Exception is thrown on try to play recorded audio clip #713
- iOS: filechooser - multiple files selection is not working #707
- Speech to text is not working with api 30 or more #693
- Traceback (most recent call last): File "jnius/jnius_proxy.pxi", line 50, in jnius.jnius.PythonJavaClass.invoke File "jnius/jnius_proxy.pxi", line 74, in jnius.jnius.PythonJavaClass._invoke NotImplementedError: The method ('onLocationChanged', ('V', ('Ljava/util/List;',))) is not implemented #687
- Notify on Windows but without archiving notifications #684
- Notification icon as base64 instead of path #679
- plyer's last release was ~2 years ago, the number of open PRs is absurd, and the last meaningful commit was months ago #674
- iOS Filechooser that picks all document types (UIDocumentPickerViewController) #673
- Python dbus error on Linux when sending notification #658
- Is that project dead? #650
- Notification for android not working [ Drawable.icon ] #647
- audio don't work on android #644
- Unittests are failing on new clone #637
- Proposing a PR to fix a few small typos #622
- Remove python2 mentions from setup.py #608
- vibrator on android 10 java.lang.SecurityException #606
- How to change prompt input to upper or lower case in JS? #603
- Does this repo is maintained? #592
- Plyer notification not working on android #591
- Feature Request: Add Intent to Android Gallery(for Pictures) #588
- plyer.filechooser.save_file doesn't work on macOS X Catalina #578
- macOS notification NSUserNotificationCenter is deprecated + missing Info.plist #449
Merged pull requests:
- action-gh-release now uses
github.token
#724 (misl6) - Bump version to 2.1.0 for release #723 (misl6)
- Bump action-gh-release to a newer version #721 (misl6)
- Update supported Python versions #720 (misl6)
- Fixes some E275. + other minor PEP8 fixes #711 (misl6)
- Document linux support for orientation #709 (rshah713)
- Document supported platforms for humidity #704 (rshah713)
- Keyword should only hold name of license #701 (rshah713)
- Document supported platforms in native filechooser #700 (rshah713)
- Fix Keystore comment to point at correct class #697 (rshah713)
- Add missing platform for barometer #695 (rshah713)
- Add missing platforms in audio #694 (rshah713)
- Fixes a failing test for notification #692 (misl6)
- Fixes style check #691 (misl6)
- Clear documentation for Processors #689 (rshah713)
- Create clear documentation for Keystore #688 (rshah713)
- Added tick in ios native file chooser row #685 (Neizvestnyj)
- :zap: Fix pep8 violations #678 (Zen-CODE)
- :hammer: Fix pep 8 failure for CICD #677 (Zen-CODE)
- fix some errors in readme file #676 (AdamMusa)
- android 11+ compatibility Documents folder #672 (moonpyx)
- Use sys.getandroidapilevel for more robust Android detection #670 (rdb)
- More robust way to get application icon on Android for notification #669 (rdb)
- Added the ability to track the closure of the file manager without selecting content #667 (Neizvestnyj)
- Fix bug, when user canceled filechooser,
on_selection
does not dispatched #666 (Neizvestnyj) - Bigger buffer, allows large selection #655 (akshayaurora)
- fix: fix filechooser save dialog for the KDE #652 (psyrykh)
- Change R$drawable to R$mipmap in notification.py for android platform #648 (masterjoseph914)
- linux/storagepath: fixup a host of issues #646 (rski)
- Change
PythonActivity
java class #642 (Neizvestnyj) - Enabled transient notifications on Linux #639 (olumidesan)
- updated-device-name-implementation-for-backward-compatibility #634 (ljnath)
- Added contributors in readme.md file #633 (ljnath)
- Fixed pep8 errors #632 (ljnath)
- Removed python2.6|7 reference and added reference for python 3.6|7|8 #631 (ljnath)
- Support to get android device name or hostname for linux and windows #630 (ljnath)
- #611 add filters for file chooser on android #624 (akshayaurora)
- docs: fix a few simple typos #623 (akshayaurora)
- Add check for Trinity Desktop Environment #620 (akshayaurora)
- FileChooser: MacOS: Use objectAtIndex_ to get multiple items #618 (akshayaurora)
- add installation section in README.md #563 (tshirtman)
2.0.0 (2020-11-09)
Closed issues:
- Macox notification - AttributeError: 'NoneType' object has no attribute 'setDelegate_' #586
- Can't display notifications with Plyer #582
- Unable to set app orientation #579
- Does plyer allow you to open another app? #577
- Calling notification.notify() raises "No Usable Implementation Found!" Error on Android #575
- tts is not working #572
- bluetooth for Android #571
- raise NotImplementedError() NotImplementedError when I use tts #567
- Filter variable may be uninitialized in MacOSX filechooser #566
- Plyer camera cannot save image to the IOS phone #561
- How to turn on gps ?? #556
- How to disable mock location (fake gps) in kivy #555
- Release notes for v 1.4.3? #550
- battery.status isCharging always shows false in WINDOWS #541
- Filechooser on mac: using path, crashes python #524
- Android Filechooser not working #512
Merged pull requests:
- Some APIs are only available for open panels. #590 (matham)
- Fix uninitialized variable in MacOSX filechooser. #568 (Mulugruntz)
- Fixing crash on MacOSX filechooser #565 (Mulugruntz)
- Uses Python 3 syntax #554 (AndreMiras)
- Feature/drop python2 #553 (AndreMiras)
- Fixes linter errors #552 (AndreMiras)
- Remove unused linters #548 (ghost)
- Fix linter warnings #547 (ghost)
- Modification of Status isCharging in windows #546 (irm19)
1.4.3 (2020-03-27)
Closed issues:
- IOS - GPS : 'IosGPS' object has no attribute '_location_manager' #538
- Android FileChooser crashes when back button pressed #534
- Notification not working on android #533
- FileChooser on Android: "on selection" fires multiple times. #530
- KIVY cannot access the android camera.. #521
- No notification icons on Linux (Gnome) #514
- Vibrator is not working on Android #509
- notification.notify crashes Android Pie devices #504
- Vibrate revision in api 26 #501
Merged pull requests:
- Fix linter warnings in examples/gps/main.py #545 (ghost)
- Switch to GitHub actions #544 (ghost)
- Fix crash in Android Notification (SDK_INT >= 26) #543 (ghost)
- Add native iOS FileBrowser #542 (Zen-CODE)
- Prevent crash when cancelling filechooser #536 (Zen-CODE)
- Make win filechooser use modern windows browser and fix small issues. #535 (matham)
- Prevent re-binding of callback on each call #532 (Zen-CODE)
- Add permission request to plyer GPS example #529 (Zen-CODE)
- Handle absence of LinuxFileChooser backend #526 (Cheaterman)
- Fix vibrator, which was not working on Android devices. #523 (ghost)
- Added logic to support the
on_status
method of the gps facade for i… #519 (Dirk-Sandberg) - Fix default audio file_path assignment error, file_path change for Py3 #518 (Nephyx)
- Add Windows applications storage path #517 (magnusvmt)
- fix typo in supported API list #516 (holdbar)
- fix the issue that tts.speak() crashes on android #511 (Chao-Jen)
- Addresses plyer issue #240. #502 (Dirk-Sandberg)
- Update README.md to add opencollective #499 (tito)
- Bump to 1.4.0 for release #496 (KeyWeeUsr)
1.4.2 (2019-09-05)
1.4.1 (2019-09-05)
Closed issues:
- I'll be Working on Linux audio #497
- Notification and service #494
- Windows notification - NotImplementedError: No usable implementation found! #485
- macOS notification NSUserNotificationCenter is deprecated + missing Info.plist #449
1.4.0 (2018-12-31)
Implemented enhancements:
- Windows microphone support #179
Closed issues:
- jnius.jnius.JavaException: Class not found 'android/content/INTENT' #479
- macOS storagepath uses non-standard path for get_home_dir() #450
- Example Applications break down on a real device #338
- Feature request: Accelerometer on Linux (computers) #9
- Linux wifi implementation via rockymeza/wifi is broken #487
- Hardcoded 'wlan0' does not work on all devices #477
- GNU/Linux wifi disconnect() not working on Ubuntu 15.04+ #452
- Plyer Email #420
- notification not working on android #402
- plyer.accelerometer not working with Kivy Launcher #401
- New PyPI release after 1.3.0 #400
- plyer.notify.notification doesn't show ticker in Android #378
- plyer.uniqueid.id causes crash on Android with sdl2 #245
- audio: JVM exception occurred: setAudioSource failed. #210
- Something wrong with encoding in AndroidNotification #175
Merged pull requests:
- Implement WiFi for Linux with nmcli #495 (KeyWeeUsr)
- Enhance Android notifications with toast and big icons #493 (KeyWeeUsr)
- Fix android notifications missing channel on Oreo and later #492 (KeyWeeUsr)
- Add Android Native filechooser and external SD card path to StoragePath #491 (KeyWeeUsr)
- Fix OSX builds on Travis #490 (KeyWeeUsr)
- Add audio recording and playing for Windows #489 (KeyWeeUsr)
- Add support for interfaces in Linux WiFi #488 (KeyWeeUsr)
- macOS tests - audio, battery, bluetooth, storagepath #482 (Nephyx)
- Change 'Speech' to 'STT' #484 (KeyWeeUsr)
- New extended CPU details implementation #483 (KeyWeeUsr)
- Fix uniqueid for linux platform #481 (KeyWeeUsr)
- Fix CI jobs reporting wrong coverage (non-imported modules ignored) #480 (KeyWeeUsr)
- thegrymek: Android speech recognition #471 (KeyWeeUsr)
1.3.2 (2018-11-16)
Implemented enhancements:
- [Feature Request] Termux support #360
- storage path support #152
- unicode broken in notifications on windows 8. #17
- Feature Request: Add adjustable tooltip text to Windows notification #14
Closed issues:
- plyer notifications raising NotImplementedError on android #467
- TypeError when running examples in Python 3 #392
- when i use buildozer and python3crystax to build apk it not work ? #380
- Windows filechooser crash #375
- Using the camera crashes the app #369
- after calling an plyer audio function from an accelerometer function, App crashes. #361
- uniqueid.id fails under android and windows7 32bit python2.7 #277
- Strange string returned by filechooser on Windows #177
- Email Support for OSX #32
- GPS Support for iOS #22
- Camera Support for iOS #21
- Example app for Camera facade #16
Merged pull requests:
- Move TODO item to a separate issue #478 (KeyWeeUsr)
- Add @deprecated decorator #476 (KeyWeeUsr)
- Fixed macOS using non-standard path for get_home_dir() #475 (Nephyx)
- Removed unnecessary grep dependency #474 (Nephyx)
- Add enable & disable WiFi for Linux and MacOS #473 (KeyWeeUsr)
- Cleaning the plyer root directory and CI scripts #468 (KeyWeeUsr)
- Add more distros via Docker images #466 (KeyWeeUsr)
- Add Linux Screenshot with X11's X Window Dump #463 (KeyWeeUsr)
- Revert uppercase on autoclass values #462 (KeyWeeUsr)
- Fixing Java class name #461 (clevermindgames)
- Increase timeout for notification test #460 (KeyWeeUsr)
- Add Windows Screenshot with ctypes+pywin32 #459 (KeyWeeUsr)
- Add screenshot test for OSX #458 (KeyWeeUsr)
- OSX Screenshot (Rebased PR #324) #457 (KeyWeeUsr)
- Rebased PR #239 + fixes #455 (KeyWeeUsr)
- Bump to 1.3.2.dev0 #446 (KeyWeeUsr)
- Bump to 1.3.1 #445 (KeyWeeUsr)
- Add extra options for installation via setuptools #438 (KeyWeeUsr)
1.3.1 (2018-10-14)
Implemented enhancements:
Closed issues:
- plyer.wifi.is_enabled() always return false running in python3 #436
- kivy-ios fails to build plyer #417
- Python 3 TabError #398
- is there a way of using the front camera instead of back #391
- storagepath.py _get_application_dir: NotImplementedError #389
- plyer app crashes on android #387
- Can't pip install plyer through git #385
- speech to text #382
- text2speech doesn't work on platform Linux #372
- Changing file_path in audio.py example is not working #356
- How to change file_path of audio in plyer? #355
- Accelerometer in plyer #354
- iOS Gyroscope crashes #352
- Need keystore for storing user credentials #350
- plyer examples app always crashes in android phones, It says "Unfortunately "Name of app" has stopped working." #349
- Notification not working on Windows #333
- Accelerometer not working on linux #327
- 1.3.0 broke notifications on Windows #318
- No encoding and °C causes SyntaxError #312
- GPS double output on output return value #302
- Cannot import wifi module in windows #272
Merged pull requests:
- Add note about Windows icon format #444 (KeyWeeUsr)
- Mark new audio recording feature in README.rst #443 (KeyWeeUsr)
- Fix not decoding bytes in Linux orientation.py #442 (KeyWeeUsr)
- Fix b' embedded in the path string for Windows' choose_dir() #441 (KeyWeeUsr)
- Add missing parameter for Windows' WlanCloseHandle() #440 (KeyWeeUsr)
- Revert facades/wifi.py change from PR #301 #439 (KeyWeeUsr)
- Update wifi.py #437 (Vibhu-Agarwal)
- Remove notification webhook from travis #434 (dessant)
- Fix Travis build for pull requests #432 (KeyWeeUsr)
- Changed OSX storage path from ctypes to pyobjus #431 (Nephyx)
- Fix Pylint errors W0150, W0511, W0601, W0603, W0610 #430 (KeyWeeUsr)
- Fix Pylint errors W0611, W0612, W0622, W0702, W0703 #427 (KeyWeeUsr)
- Disable all Pylint errors to fix red jobs #426 (KeyWeeUsr)
- Downgrade Travis due to missing docker service on Ubuntu Bionic #425 (KeyWeeUsr)
- Switch from Ubuntu Trusty to Ubuntu Bionic LTS #424 (KeyWeeUsr)
- Fix style issues in utils, compat and setup.py #423 (KeyWeeUsr)
- Clickable notifications, fixes #154 #422 (AndreMiras)
- Fix style in test_facade.py #418 (KeyWeeUsr)
- Fix pep8 issues in files #416 (KeyWeeUsr)
- Add script for CI deployment to PyPI #413 (KeyWeeUsr)
- Fix travis to use real branch instead of detached HEAD #412 (KeyWeeUsr)
- Add linux battery from sysclass #411 (KeyWeeUsr)
- Switch to unicode in macosx battery.py #410 (KeyWeeUsr)
- Fix test_facade failing for Py3 by switching to Mocks #409 (KeyWeeUsr)
- Add Dockerfiles for testing, fix tests and style #408 (KeyWeeUsr)
- Implemented storagepath in linux #407 (Sires0)
- Improve messages for missing dependencies #406 (dolang)
- Updates README.rst, removes dup in supported API #403 (AndreMiras)
- why should decode 'l' again and again #396 (xhimanshuz)
- Correcting issue https://github.com/kivy/plyer/issues/392 for linux p… #395 (ghost)
- Number Of Processors for Linux Platform #394 (salil-gtm)
- enhancement: bluetooth status #388 (kapilnayar)
- Show that bluetooth is not supported #379 (zerox1212)
- Arrange APIs table in alphabetical order #377 (sumitmadhwani)
- Add list of supported platforms to facade #376 (sumitmadhwani)
- Add iOS api for storage path #374 (sumitmadhwani)
- update readme #373 (sandeepsajan0)
- Update buildozer.spec #370 (sandeepsajan0)
- Warn instead stder.write for linux notif errors #368 (sametmax)
- Add coveralls.io report #367 (KeyWeeUsr)
- Fix pep8 in plyer #366 (KeyWeeUsr)
- iOS Barometer API #363 (sumitmadhwani)
- Fix iOS Gyroscope crash issue #353 (sumitmadhwani)
- Keystore implementation. #351 (brentpicasso)
- iOS Spatial orientation #348 (sumitmadhwani)
- iOS Gravity sensor #347 (sumitmadhwani)
- Linux Brightness API #346 (sumitmadhwani)
- Brightness API #344 (sumitmadhwani)
- Fix bug in WindowsBalloonTip #343 (Chronial)
- Storage path API #342 (sumitmadhwani)
- Compass uncalibrated #341 (sumitmadhwani)
- Gyroscope uncalibrated sensor #337 (sumitmadhwani)
- Spatial Orientation for android #336 (sumitmadhwani)
- Update win_api_defs.py #335 (sumitmadhwani)
- Add some tests + Appveyor #329 (KeyWeeUsr)
- Fix notification ticker error + pep8 #328 (KeyWeeUsr)
- Pep8 fix in temperature.py #322 (sumitmadhwani)
- Example for Unique ID facade #321 (sumitmadhwani)
- Android Humidity #301 (bhaveshAn)
- fix handling of notifications' timeout on Linux #297 (benoit-pierre)
- Facade Wifi #290 (bhaveshAn)
- orientation feature for linux #273 (susmit)
- Fix wifi module. #244 (account-login)
1.3.0 (2017-03-23)
Implemented enhancements:
- Feature Request: Alarms #8
Closed issues:
- Notification.notify crashes android app #296
- GPS android crash on launch #288
- Send SMS feature not working #261
- gps.configure() results in exception #257
- v1.2.4 archive not available via github #234
- SyntaxError in wifi.py for Linux #230
- New PyPi release please, to fix static jfieldID not valid for class java.lang.Class<org.renpy.android.PythonActivity> #229
- Drag-and-drop: originate in Kivy, drop in some external app #228
- GPS Issue after in iOS after last changes in plyer #224
- battery.status isCharging always shows false #221
- GPS example only updating location once #217
- uniqueid.id raises exception on Windows #212
- Redundant libs folder #209
- accelerometer on Android with Kivy Launcher 1.9.0 not working #206
- Camera on android doesn't return to app #200
- android compass suggestion #195
- more example code to the docs #166
- Mail API on linux raises error NameError: name 'Email' is not defined #131
- native gui widgets #124
- android: using gps app cannot resume from pause #112
- Please upgrade pypi ! #94
- UniqueID using OpenID #83
- Display the notification in the right places #78
- Python3 All The Plyer! #12
Merged pull requests:
- Modify readme #308 (malverick)
- Add version tags in light and temperature facade #307 (malverick)
- Android ambient temperature sensor #293 (malverick)
- Android light sensor #292 (malverick)
- Plyer android proximity sensor #287 (malverick)
- Plyer android pressure sensor #286 (malverick)
- Update readme and plyer/__init__.py #285 (malverick)
- Plyer android gravity sensor #283 (malverick)
- Add on_pause function #274 (malverick)
- uniqueid_facade #270 (bhaveshAn)
- add bin and .buildozer directory to .gitignore #259 (malverick)
- pep8 fixes #250 (malverick)
- update code #249 (kiok46)
- Adding small examples in facade files #237 (kiok46)
- Fix TypeError if
LANG
is not set in on osx #232 (ForeverWintr) - fix #230 #231 (kiok46)
- fix gps issue for ios #225 (kiok46)
- Fixed issue #221 #223 (Warlord77)
- Add flash example #219 (kiok46)
- Make gps request parameters configurable #218 (kiok46)
- Wifi Facade. OSX, Windows, Linux #213 (kiok46)
- add sms for ios #203 (kiok46)
- check android for namespace, otherwise use renpy #199 (kived)
- fix p4a revamp #198 (kived)
- Rewrite notification on Mac using PyOBJus #192 (andong777)
- Call for ios #191 (kiok46)
- Note on requirements for iOS #187 (doratoa)
- Adding battery example, notification ticker and gps example update #183 (kiok46)
- Call and dial for android #181 (kiok46)
- Dial or Call for android #180 (kiok46)
- Added accuracy argument to on_location call. #174 (lipi)
- Introduce camera access for ios and a example. #167 (akshayaurora)
- macosx: fix incorrect method name in filechooser #165 (kived)
- linux email import fix #151 (thegrymek)
- Merge android columns #148 (dessant)
- Camera example #41 (trivedigaurav)
v1.2.4 (2015-06-01)
Implemented enhancements:
- Update platform check code #109
Closed issues:
- webhook test #142
- Sync style check updates from the Kivy repo #141
- GPS on android doesn't work (a strange error) #136
- Create toast notification facade for Android and iOS #126
- uniqueid.id empty on linux. #114
- Gyroscope Support for iOS #111
- AndroidUniqueID doesn't use Android ID #107
- OverflowError: Python int too large to convert to C long [android lollipop] #103
- Feature request: ability to open browser to a particular page #98
- AndroidGPS list GPS Provider but use hardcoded "gps" #54
- Email Support for Android < 4.0 #42
Merged pull requests:
- style fixes #147 (dessant)
- add pydev files to gitignore #146 (dessant)
- Plyer style guide update #145 (thegrymek)
- Plyer audio for android with facade and example #144 (thegrymek)
- fix versionchanged tag #143 (dessant)
- update info about support email for android<4.0 #140 (thegrymek)
- added plyer.facade to setuptools package #139 (thegrymek)
- splitted facades #138 (thegrymek)
- Inclement orientation #135 (thegrymek)
- remove unused variables #134 (thegrymek)
- fix #107 - Use Android_ID instead of IMEI #133 (aron-bordin)
- vibrator for android v < 4.0 #129 (thegrymek)
- PEP8 and typo fixes in MacOS X file chooser. #123 (robertjerovsek)
- pep8 - removed unused imports and variables #122 (thegrymek)
- Pep8 fix #121 (laltin)
- add video recoding to Camera facade and camera.py #120 (pspchucky)
- Use environ to change LANG to 'C' while calling shell processes #119 (trivedigaurav)
- add IrBlaster facade and Android implementation #118 (kived)
- Android gps.py: fixed location provider cycling #117 (JimmyStavros)
- iOS GPS support #116 (laltin)
- use environ to change LANG to 'C' while calling lshw #115 (tshirtman)
- responds to issue 109 https://github.com/kivy/plyer/issues/109 #110 (AlbericC)
- Add file chooser facade and support for Linux and Windows #106 (Depaulicious)
1.2.3 (2015-01-27)
1.2.2 (2015-01-27)
Closed issues:
- NotImplementedError: No usable implementation found! whith usable implementations on the system. #108
- Gyro example #101
- Notification is not working in android #93
- plyer.notification.notfy() raises NotImplementedError under Python 3.3 in Linux but not Python 2.7 #58
Merged pull requests:
1.2.1 (2014-08-19)
Implemented enhancements:
- Feature Request: codec-independent sound player #2
Closed issues:
- Battery status connected is actually isCharging #84
- Email Support for Windows #36
- Accelerometer Support for OSX #29
- Email Support for Linux #28
- Email Support for iOS #25
- TextToSpeech Support for iOS #24
Merged pull requests:
- fix print statement #92 (dessant)
- iOS UUID facade #90 (trivedigaurav)
- Removing build_ext from plyer #89 (trivedigaurav)
- iOS Email Facade #88 (trivedigaurav)
- iOS Battery #86 (trivedigaurav)
- Change connected to isCharging #85 (trivedigaurav)
- Return None until sensor data is available #82 (trivedigaurav)
- Update compass.py #80 (ChrisCole42)
- Use whereis_exe to check for binaries #79 (trivedigaurav)
- Update compass.py #77 (ChrisCole42)
- Maintenance #75 (trivedigaurav)
- facade docstring revision #74 (dessant)
- Query Battery info/status #73 (trivedigaurav)
- Revert "Activity was imported twice" #71 (trivedigaurav)
- Fix tabbing #70 (trivedigaurav)
- Gyroscope facade proxy declarations #69 (trivedigaurav)
- Linux accelerometer facade #68 (trivedigaurav)
- Update README.rst #67 (trivedigaurav)
1.2.0 (2014-06-24)
Implemented enhancements:
- Feature Request: Add adjustable timeout option to Windows notification #13
- Changes notify to use ctypes instead of win32gui so we could use unicode. #18 (matham)
- User-specified icon support for Windows notifications #11 (brousch)
- Added Vibrator facade and android implementation #6 (inclement)
Closed issues:
Merged pull requests:
- Plyer Unique ID facade #66 (trivedigaurav)
- Switched to pyjnius #63 (trivedigaurav)
- Update README #62 (trivedigaurav)
- Gyroscope Facades #60 (trivedigaurav)
- Ios compass #59 (trivedigaurav)
- Plyer compass facade #57 (trivedigaurav)
- Update README #56 (trivedigaurav)
- Using sudden motion sensor as accelerometer on OSX #55 (trivedigaurav)
- Added sms facade, example and android implementation #52 (mihaineacsu)
- add Mac OS X email support #49 (Depaulicious)
- add Windows email support #48 (Depaulicious)
- added Linux email support #47 (Depaulicious)
- Add compat module, remove decoding of strings in notification #46 (matham)
- Created an accelerometer example. Uses garden graph to plot the values #39 (trivedigaurav)
- Shows an error popup if there is no TTS #38 (trivedigaurav)
- Text to Speech Example #37 (trivedigaurav)
- readme typo corrected #15 (ghost)
- Introduce dbus notification #10 (akshayaurora)
- Added an email facade and basic android implementation #5 (inclement)
- Tts #1 (brousch)
* This Change Log was automatically generated by github_changelog_generator
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file plyer-2.1.0.tar.gz
.
File metadata
- Download URL: plyer-2.1.0.tar.gz
- Upload date:
- Size: 121.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65b7dfb7e11e07af37a8487eb2aa69524276ef70dad500b07228ce64736baa61 |
|
MD5 | 91e465d4bdcaf74f94140ff13c834209 |
|
BLAKE2b-256 | 2085f61425aa9be1f9108eec1c13861c1e11c9a04eb786eb4832a8f7188317df |
File details
Details for the file plyer-2.1.0-py2.py3-none-any.whl
.
File metadata
- Download URL: plyer-2.1.0-py2.py3-none-any.whl
- Upload date:
- Size: 142.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b1772060df8b3045ed4f08231690ec8f7de30f5a004aa1724665a9074eed113 |
|
MD5 | 68fde64d14743b93dc2f3ff7703828f7 |
|
BLAKE2b-256 | d389a41c2643fc8eabeb84791acb9d0e4d139b1e4b53473cc4dae947b5fa33ed |