Could not prevent app deployment on specific Nokia devices
Hello everybody,
I am trying to prevent the installation of my application on Nokia 5800 Xpress Music devices. Although Nokia 5800 XM's device UID is not in the pkg_prerules section of my Qt project file, I'm still able to install the app on that device.
The app is signed with a developer certificate and the installation is performed using the smart installer. I'm currently using Nokia Qt SDK 1.0 with Qt 4.6.
Any help will be highly appreciated.
Regards,
Eugen
Re: Could not prevent app deployment on specific Nokia devices
For disabling installation, you would need an explicit check and abort in the .pkg file[CODE]IF (MachineUID=0x12345678)
"No5800.txt"-"",FT,TA
ENDIF[/CODE]where 0x12345678 would be the UID of the 5800 and No5800.txt would be a text file with the message which explains that it is not supported and the installation aborts (FT=FILETEXT, TA=TEXTABORT)
Re: Could not prevent app deployment on specific Nokia devices
Hello wizard_hu_ ,
Thank you very much for your answer.
I have another question, tough. What is then the purpose of the pkg_prerules section from the project file ?
This is how the pkg_prerules from my project file looks:
[CODE]
...
myapp_deployment.pkg_prerules += "[0x20023763],0,0,0,{\"Nokia 5230\"}"
myapp_deployment.pkg_prerules += "[0x20023764],0,0,0,{\"Nokia 5230\"}"
myapp_deployment.pkg_prerules += "[0x20024105],0,0,0,{\"Nokia 5230\"}"
myapp_deployment.pkg_prerules += "[0x2002376B],0,0,0,{\"Nokia 5230\"}"
....
[/CODE]
Isn't this supposed to specify the devices which are valid for deployment ?
I'm using Qt Creator for development, and the .pkg file it is generated at build time. Is there a way to automatically insert the check specified by you ?
I have to mention the fact that I am new to Symbian development, and some of the things from the project file regarding to symbian are not clear to me yet.
Regards,
Eugen
Re: Could not prevent app deployment on specific Nokia devices
Your qmake script from the *.pro file is something that you should discuss in the Qt forums, after reading the [URL="http://doc.qt.nokia.com/latest/qmake-variable-reference.html"]relevant Qt documentation[/URL]. You can use qmake script to insert content anywhere in the PKG file by using the DEPLOYMENT variable, things such as .pkg_prerules or .pkg_postrules simply help your target sections of the script more precisely.
For example [0x20023763],0,0,0,{\"Nokia 5230\"} is a [URL="http://library.forum.nokia.com/topic/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-DB220677-5998-529C-BE35-0D66F588E057.html"]hardware/UI platform dependency[/URL] which is usually added between the header and the body of the PKG. Since the body is generated by qmake using the deployment rules, it only follows that using some "pre-rules" you will manage to place such content before the body.
Once the script processed by qmake, you end-up with a PKG file ( *_template.pkg) which then obeys the [URL="http://library.forum.nokia.com/topic/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-43B4B4E7-413E-5D18-811C-4B9E38CDEB69.html"]PKG format[/URL].
Re: Could not prevent app deployment on specific Nokia devices
[QUOTE=neugen;842591] [CODE]
...
myapp_deployment.pkg_prerules += "[0x20023763],0,0,0,{\"Nokia 5230\"}"
myapp_deployment.pkg_prerules += "[0x20023764],0,0,0,{\"Nokia 5230\"}"
myapp_deployment.pkg_prerules += "[0x20024105],0,0,0,{\"Nokia 5230\"}"
myapp_deployment.pkg_prerules += "[0x2002376B],0,0,0,{\"Nokia 5230\"}"
....
[/CODE]
Isn't this supposed to specify the devices which are valid for deployment ?[/QUOTE]These lines are specifying compatibility. However if a device is not compatible, it displays a question about it, and still allows the user to install the application. Also, if platform level compatibility is specified ([url]http://wiki.forum.nokia.com/index.php/S60_Platform_and_device_identification_codes[/url]), the rest does not really matter.
Re: Could not prevent app deployment on specific Nokia devices
Thank you very much for all of your answers . I will dig more into this.
Regards,
Eugen