http://rzr.online.fr/q/webdav# TRANSIG : testimonial on experience developing #Tizen app , synch'ing notes on #WebDav with #JavaScript (wip) ====== TRANSIG : A testimonial on experience developing a Tizen app ====== Transig is a tool to manage user's files (text, images, music etc) from a mobile phone and usea personnal cloud backend to store them... Here are a few comments, I plan to reformat this into a tutorial. More details up to come (sources, video, demos) on those URL : * URL: http://rzr.online.fr/q/webdav * https://wiki.tizen.org/wiki/User:Rzr * More : http://rzr.online.fr/q/tizen * SourceS : ContacT me ... Video : http://dl.dropbox.com/u/93263865/file/transig.webm ===== INTRODUCTION ===== When tizen came up, I was quiet amazed on this new Linux Platform, coming from MeeGo, I expected to port some of my projects (Qt/Qml) to compare ... But unfortunately TiZen is so far restricted to HTML5/JavaScript API. So I had to think about a new product, I wanted to dig into multimedia API but I felt I had a wait a bit to get them more mature... Finally, I thought about creating a WebDav client to be manage my files... {{http://a.images.blip.tv/Rzrfreefr-transig20120808rzr743-764.jpg}} ===== DEVELOPMENT PROCESS ===== First I created an HtmL file and started to code with in my favorite EditoR (EmacS) I had some JavaScript KnowLedge since NetScape years, so It was quite easy to get familiar with JQuery, JS ApI : local storage XmlHttpRequest... After synch'ing files on my private server, and tested it on TiZen's lb default WebBrowser, It went working... ===== PACKAGING ===== The final goal was to have a local app that can connect to any WebDav server so I did use the SDK to migrate my "webpage" into a tizen app... This was pretty easy, just generate a default project and merge previously written code... After upgraded SDK, updated time of target, deployment succeed. we're done Here a few resources : * https://viewer.zoho.com/docs/urlview.do?url=http://download.tizen.org/misc/media/conference2012/wednesday/ballroom-a/2012-05-09_1415-1455-converting_your_web_app_to_tizen.pdf# QnX AjaX * http://www.youtube.com/watch?v=oO4VMgrAp4I ===== FUTURE ===== So far only the basic features are implemented, I guess I should spend more time on it before releasing a beta version of the product... Anyway the project is opensource and welcome any review patches at the URL at the top ToDo : * support tizmee : http://talk.maemo.org/showthread.php?p=1286259#post1286259 * open editor on retrieved contents * resolv conflicts * local cache * upload large files ====== FEEDBACK ====== ===== RECOMMENDATIONS AND/OR PRODUCT IMPROVEMENTS FOR FUTURE RELEASES OF TIZEN AND/OR PRODUCT IMPROVEMENTS ===== * supporting Native Development would be appreciated , [[Qt]] / QmL * backward compatibility with MeeGo would be awesome * inclusive platform would be perfect ===== A SOLUTION TO A SPECIFIC CHALLENGE IN TIZEN DEVELOPMENT ===== Using XmlHttpRequest in Tizen WebApps (from local file) puzzled me ... I was facing a major issue , it can be easily resolved by adding a single line to project's config.xml else you will face this kind of error message : Origin null is not allowed by Access-Control-Allow-Origin. Your webserver must also allow CORS too : Header set Access-Control-Allow-Origin "*" Simple as that I was thinking about running a local webserver would unblock this null's Origin restriction... More : http://rzr.online.fr/q/html5 ===== ADVICE OR A DEMO ON HOW TO WRITE AN APP FOR TIZEN ===== Try to stick to standards as much as you can, since the devices are not in mass market. Depending on a risky feature can be a problem (for a second I feared about XmlHttpRequest on local files but it's supported) ===== PORTING AN EXISTING APP TO TIZEN ===== As said previously , create your project out of tizen and test it on your regular browser will save you deployment to target, once mature, you can integrate it into a tizen generated project.. and keep testing this on your desktop browser... ===== USING THE TIZEN SDK ===== I was lazy to discover all EclipsE's features, and preferred my regular tools (EmacS, ChromiuM etc), but I figured out how to use basic features to deploy project on device Get the SDK working in a DebIan [[amd64]] through a ChRoot into bohdi linux [[i386]] RootFs More at : http://rzr.online.fr/q/debootstrap Problem : invalid certificate certificate is not valid. Please check your target date. (Return Code: 260) Solution : rm local files More: https://bugs.tizen.org/jira/browse/TSDK-57?focusedCommentId=11563#comment-11563 ===== MISC ===== * http://stackoverflow.com/questions/8792722/webdav-javascript-library * http://debris.demon.nl/javascript/ * http://tools.ietf.org/html/rfc6578 * http://tools.ietf.org/html/rfc4918 ===== MORE ===== @TaG: ClouD TiZen [[html5]]