developing symbian app for personal use only - symbian

I recently bought a second-hand Nokia E52, and I'd like to write some apps for personal use only, i.e. without needing to distribute them.
Now, learning about Symbian S60 today is a bit like learning an ancient language noone speaks anymore, and I'm very confused. In particular could someone explain to me whether I'll be able to access all capabilities somehow without having a developer certificate (which I don't have)? Or is it that I'll be able to access only those capabilities which are covered by "self-signed" certificate?

You can't request (free) developer certificates anymore, only create own self-signed certs which are restricted:
http://www.s2.org/~pekangas/creating_symbian_certificates.html
The only way to access more advanced capabilties is via hacking your phone.

I don't have E52 but I can give some advice.
I use Nokia Qt suite to write a music player and camera capture software for my Nokia phones (Symbian ^1 and above). I can access the network, read / write data to the sdcard and internal phone memory.
Generally my Qt .pro file declare the capabilities:
# Self-signing capabilities
TARGET.CAPABILITY += NetworkServices \
ReadUserData \
WriteUserData \
LocalServices \
UserEnvironment
If you need to play music and use the Camera, you need to install Qt mobility (a .sis file) on your devices running Symbian ^1 or older devices.
hope this helps!

As you assumed, you can only use capabilities covered by self-signed certificate. However, there is very little you can not do without those. Also, you can only use libraries/functions that use (or require) cababilities covered by self-signed certificate. The capabilities are very well explained in some of the Symbian books, for example this has the capability part freely readable.

Related

How to use webauthn without key fob

I have tried my firefox 62 and chromium on various webauthn examples and I could not make any of them work. Are those supposed to work without special hardware? I activated security.webauth.webauthn_enable_softtoken in about:config. Though I can't find much documentation on what exactly it does. Is webauthn ever supposed to work without special hardware?
https://webauthn.bin.coffee/
https://webauthn.io/
https://webauthndemo.appspot.com/
To be able to use the "softtoken" in Firefox you have to enable it and disable the usbtoken:
security.webauth.webauthn_enable_softtoken=true
security.webauth.webauthn_enable_usbtoken=false
Then you can test on https://webauthn.bin.coffee/ and https://webauthn.io/ .
However, I have no idea how exactly it works and where its documentation is located.
As for the question how to use Webauthn, it should be possible according to the standard, but if browsers support it is another thing. Check this comment: https://github.com/w3c/webauthn/issues/1027#issuecomment-411441722
The spec is indeed written with hardware-backed authenticators (external or built-in) as the main concern, but WebAuthn does not in any way forbid integration of purely software-based authenticators.
...
It's perfectly possible for browsers or browser plugins to provide support for software authenticators, although WebAuthn provides no standardised API for doing that.
Well, WebAuthn is evolving technology. Supported only in Firefox/Chrome Desktop and Chrome Mobile browsers.
You'll need some U2F stuff like https://www.yubico.com/products/yubikey-for-mobile/
or AddOns like https://krypt.co/
Webauthn is pretty widely supported now, and it works in modern browsers without a roaming authenticator (a USB device or similar). It's very easy to test on the site you mentioned, https://webauthn.io/
https://caniuse.com/#search=webauthn

Symbian S60v3 3rd Edition FP2 SDK Emulator Unlock

I've been playing around with the SDKs of Symbian OS and I've encountered an issue that I couldn't bypass.
Specifically I've been using S60v3 3rd Edition Feature Pack 2 SDK's Emulator.
I want to test some .sis/.sisx application and maybe develop/fix some of them (also nostalgia from some old games that I used to play that can no longer be emulated any other way).
The issue is that all the application that I want to install on the emulator have the signature error, and since it's no longer possible to sign them I tried using one of those apps (HelloOX v2) that will remove the signature check.
Sadly those don't seem to work at all on the Emulator for some reason. Even though I checked the options in application settings to accept all software installation and disabled certificate check.
Is there a way to somehow unlock/hack the emulated OS from the SDKs?
I know this is dead technology which makes it even harder to find a solution for this.
Thanks in advance for your help if someone actually knows.

Developing apps for Symbian OS v9.1, UIQ 3.0

I'm very new to Symbian application development. I'm googling some beginner tutorials about Symbian development. As there are many versions and many phone vendors, I like to ask you guys who are already have experiments in Symbian development..
My target is to develop small apps for sony ericsson w960i phone that uses Symbian OS v9.1, UIQ 3.0.
The goal of application is to save all incoming/outgoing calls/messages as a backup somewhere (txt file or isolated storage) inside the app.
For example: If I call to someone, my app should receive the events of number/contact name so I can save it to somewhere else.
Can someone help me to suggest to achieve this?
Can I use Nokia Qt to develop apps for "sony ericsson w960i"? If not, which SDK should I use it for my app?
Can Nokia Qt be used to access call triggers/messages? I read that Qt can't access the internal OS stuffs but not sure whether accessing calls/message can be considered as internal OS stuffs.
Thanks in advance.
Are you absolutely sure about UIQ? This is even more dead than Symbian.
Wiki link
BTW, you can also use Symbian code in Qt application.
Well, the main issue here is that neither Sony Ericsson nor UIQ don't even exist anymore.
Sony swallowed the first and the second went bankrupt after Nokia acquired Symbian itself.
So, whatever you end up doing won't be officially supported.
You can still develop applications for the w960i using JavaME but that doesn't have a telephony API so it won't help you with the kind of application you described.
Qt is not available at all on the w960i.
In order to develop applications using Symbian OS C++, you need the UIQ3 SDK. Since you can't download it from any official source anymore, you will have to google for places online where other people have uploaded it. Hopefully, you can find one with a legitimate untouched SDK.
The documentation in the SDK will help you create the UIQ-specific GUI for your application.
For the engine of your application, generic Symbian OS C++ will do. If you are a true beginner, my admittedly biased advice would be to procure a copy of Quick Recipes on Symbian OS since what you need to learn basically amounts to reading several chapters of that book. The code examples in the book will work on the w960i and will show you how to use the Symbian telephony and messaging APIs.

Windows Live Mesh offers sync for program settings; can I add support for my software?

Is there a way I can add support for syncing my program's settings with Windows Live Mesh, so that it would appear in the list below?
That's where I would like to see my program offering to "Turn on syncing for your settings". Is there some sort of a plugin API for this?
Unfortunately not. Microsoft struggled with opening this thing up to developers, and I believe something similar actually was available for some time during the old Mesh beta days (before they renamed Sync to Mesh). I doubt they will ever allow it since Mesh is being replaced with SkyDrive (I'm pretty sure they actually announced it, but I can't find where, but this basically says the same: http://www.zdnet.com/blog/microsoft/is-microsofts-live-mesh-on-its-way-to-the-graveyard/12540). Setting syncing like you want is available to Windows 8 Metro apps through Skydrive and Microsoft Account/Live ID roaming (http://blogs.msdn.com/b/b8/archive/2011/09/26/signing-in-to-windows-8-with-a-windows-live-id.aspx and API: http://msdn.microsoft.com/en-us/library/windows/apps/windows.storage.applicationdata.roamingfolder.aspx)
But of course, in exchange for that you restrict your audience to Windows 8 users.

Newbie question on Flash video players, products/SDKs, and API

I'm a C programmer and a total newbie to Flash/video/web world. Don't know where/how to start, and so would greatly appreciate your initial help.
Question
If I need to host flash videos off of my website (instead of embedding YouTube links on my webpages),
AND
If I need to provide player API like YouTube's that can be used, say, for supporting chromeless player versions customizable via this custom API of mine...
THEN
What do I need to do essentially...?
Write a custom Flash video player?
If yes, how? I mean, using which Adobe products / tools / SDKs / language(s)?
Is there anything free/opensource available for doing this? Especially, for Linux platform?
Write a new browser (firefox) plugin for users visiting my site?
Not sure how my custom Flash video player will get to the user visiting my site for the first time?
Any books, resources that cover this problem well?
Does the Flash content need to hosted off of a Windows server only?
Currently lost. Thanks in advance,
/SD
Flash has video playback support built-in, so all you need to do is use the Flash authoring environment or Flex to compile a .SWF file that uses the video API, with some buttons to stop and start the stream, volume, seeking, anything else you want your player to do.
Many people have already done this for you, in a way you can easily use from simple HTML. See eg. OSFLV, Flowplayer, JW...
Write a new browser (firefox) plugin for users visiting my site? Does the Flash content need to hosted off of a Windows server only?
Lord no! Flash video would never have taken off if it was just another custom-server+custom-plugin piece of unpleasantness. Though special streaming servers are possible, for the most part it's just an FLV file sitting on a web server.
(FLV is the video format supported by the Flash video playing functions. There are many, many tools you can use to convert other formats to it; I use Avidemux.)
If you are planning to use a "Progressive Download" approach, then your FLV files can be hosted on a Windows or a Linux box. Be aware that:
it is no as efficient as true
streaming.
you may not use it for live events
nor only for stored video files.
it cannot automatically detect the
end user's connection speed.
it is not possible to jump ahead to
another part while it's downloaded.
the video file will be saved on the
end user's computer.
If you are planning to use a "Streaming" approach then you can either buy and use Adobe's solution (Flash Media Server, available on both Windows and Linux box) or sign up for a hosted solution. On this page you will find recommended providers by Adobe. I personally have been using Influxis's hosting with success for a couple of years already.
You can also write your own streaming server but that would be a lot of hard work. If you are interested in that, I would recommend you have a look a Red5 which is an open source Flash Server written in Java.