Pigler Notifications API
(Usage example)
An analogue of Notification Center that is compatible with all devices based on Symbian Belle and higher,
created to provide a simple and convenient API for application developers to manage notifications in the status panel.
created to provide a simple and convenient API for application developers to manage notifications in the status panel.
Installation
Pigler Notifications API:
Install Pigler.sis and reboot the phone
Pigler Java API:
Activate Open4All patch, then install PiglerJavaAPI.sis and reinstall any .jar app
Install Pigler.sis and reboot the phone
Pigler Java API:
Activate Open4All patch, then install PiglerJavaAPI.sis and reinstall any .jar app
For developers
Examples
QT tester sourcesJava tester sources
Kutegram source
Symbian C++ example:
#include <PiglerAPI.h> LOCAL_C void Test() { PiglerAPI *api = new PiglerAPI(); _LIT(KAppName, "Example"); if(api->Init(KAppName) == KErrNone) { _LIT(KText, "My test notification\nHello world!"); api->SetNotification(0, KText); } api->Close(); }
Usage notice
Creating more than 1-2 notification items for application is not recommended.Limit of items count is platform dependent, See here.
On Belle: 10 per app, 100 globally.
On Anna: 2 per app, 3 globally.
When limit of created notifications is exceeded,
creation of new items will result KErrAlreadyExists (-11) error.
It also may be KErrOverflow (-9) error.
Items should have 2 lines of text separated by '\n' character.
It is not relevant to Java and Qt, since there are 2 parameters for title and text.
On Anna there is only 1 line.
Additionaly, there is utility method PiglerAPI.isSingleLine() in Java for this.
Before using function that has API level higher than 2, check its availability
Use PiglerAPI::GetAPIVersion in C++ and PiglerAPI.getAPIVersion() in Java
Unhandled functions will return KErrNotSupported (-5).
In C++, icon bitmap must have size of 68x68 with format TDisplayMode::EColor16MA
Since API level 4, due to Anna support, size of bitmap became platform-dependent,
And must be set according to PiglerAPI::GetBitmapSize return value.
Implementation may return 0 if icons are not supported.
In Java and Qt, icon is fitted and scaled automatically, recommended size is 52x52 without margins.
To check if Pigler Java API package is installed,
check for "org.pigler.api.version" system property value.
Example values are: "1.4", "1.2-kemulator".
Currently supported platforms:
Symbian Belle (Refresh, FP1, FP2)
Symbian Anna
KEmulator nnmod >= 2.14.4 (Java only)
Symbian Anna support is still experimental.
Do not create more than one API connection at time.
Static libraries (API level 4)
armv5\urel:piglerapi_sym.lib
piglerapi_qt.lib
Last update: 10.08.2024
armv5\udeb:
piglerapi_sym.lib
piglerapi_qt.lib
Last update: 10.08.2024
People:
shinovon: java, symbianc++ part, reversing
curoviyxru: c++, qt part, idea
shinovon: java, symbianc++ part, reversing
curoviyxru: c++, qt part, idea