Chromium Embedded Framework (CEF) html5 desktop application - html

I am new to Chromium Embedded Framework (CEF). How can I create an HTML5 desktop application using CEF. I serached a lot. But still confused about developing the applicaion.
please help.

You can create a CEF application in different languages (c/c++ or C#, python or ...), what is your preference about that?
In case of C# you might want to try https://github.com/cefsharp/CefSharp, I used this one in the past and it worked really great!
There are also sample projects in the CEF svn found here:
CefClient and CefSimple
Together with this tutorial here: https://bitbucket.org/chromiumembedded/cef/wiki/Tutorial
In the past I used CefSharp and one time I changed the CefClient example (removed everything I didn't need) and rebuild it. Using CefSharp was a lot simpler than the CefClient.
Another possibility might be https://github.com/rogerwang/node-webkit but that isn't CEF so a bit offtopic
edit:
For java there seem to be two CEF Wrappers
javachromiumembedded
javacef
See an example application here (code): javacef

Related

Confusion regarding PhoneGap/Cordova

I have a webapp developed (game), based on HTML5 + CreateJS, but since Android lacks of standards, I've run into unsolvable issues for my webapp. That's why im recurring to PhoneGap.
Yet my confusion lies in the fact that I need to make this game into a phonegap app that runs on Android/iOS, using for each platform native specific stuff.
So, should I build 2 apps (one for each platform), all over again, or use the one I have and try to deploy it into different devices using phonegap?
The truth is I don't know how to approach this problem... can anyone help?
Best Regards.
Yes, you can use Cordova (PhoneGap) to create a cross platform mobile app. Basically, Cordova (PhoneGap is Adobe's version of Cordova) is an open source project that provides JavaScript API's for accessing native device functionality (like the Accelerometer or Camera.) Cordova also lets you package your app in the native application shell, so you put your app on the app store. Please see my other answer here about Cordova and hybrid apps: Beginning with Apache Cordova
If the game runs completely in HTML5, I think it would be easiest to just use that one codebase and integrate it with Cordova and then deploy to the various platforms - why rewrite the app twice if you don't need to?
However, if you are using native device functionality, you may need to develop your own Cordova/Phonegap plugins for use. This way, you can call regular Android/iOS code (Java or Objective-C code) that you write from your web app code with JavaScript. This might be more work, especially if you have never written in these languages.
Personally, since you already have a working HTML5 app, I'd just try to get it working with Cordova and see how it performs. If you really need some native specific stuff, then I'd try creating that "stuff" as a plugin. Rebuilding the app twice, once for Android and once for iOS seems like a pretty big waste of time to me.
The answer here is either yes or no.
Yes if you want to use some specific feature of the native code. For instance, iOS's default objects is beautiful itself, you can easily drag and drop it to build your application. However, it takes lots of time to rebuild for another platform. Specially, if you intend to create app/game for multiple platforms, it would be a nightmare.
HTML5 is much faster for you to approach several platforms. However, you can't get the best result on all platforms and all devices. I mean, it is really difficult to bring the max performance of the app on all devices. For this solution, I suggest HTML5 with some libraries such as LimeJS, Crafty, Impact, etc. or some tools such as Construct 2, etc. I used to use HTML5 with all those libraries but found out that Construct 2 is much better.
Instead of using phonegap, I recommend cocoonjs. Specially if your targets are iOS and Android platforms.
Hope that help.
Yeah, even the simplest game such as bubble buster would be difficult to make cross platform with different version of android webview and you need cross platform? I would suggest looking into something like Unity3D.

TideSDK and dependency on SDK

I'm very very new to HTML5 programming, so forgive me if I ask a strange question. I'm looking for a good tool to write apps the can be run on iPhone, Android and the most known webbrowsers on a desktop. I came across TideSDK and I was a bit confused by the fact that it has SDK in the title. Does this mean that the SDK is part of anything I will create with it?
Do I have to distribute the SDK along with the App I create and wouldn't that be a problem when wanting to freely distribute my application?
Regards
Gabrie
Well there are two ways to build the application
1) with package.
With package works as stand alone application without any dependencies or anything other things installed.
2) without package.
The think you were saying is right. They need to have modules to be installed.

Develop Native Application on Ubuntu with HTML/CSS GUI?

Redmond has a good idea occasionally:
The next-gen Windows will come with a new programming foundation, letting developers build native apps with the same techniques they use for Web applications. Microsoft calls this new variety "tailored apps."
There is always a steep learning curve for developing GUIs; each new toolkit you learn is different enough that it takes a lot of time and effort and frustration. Thus developing in HTML with CSS begins to look very appealing: it's much easier and much more portable; and with HTML 5 and CSS 3, it is very powerful.
Is there any support yet on Ubuntu (or even better, a cross-platform toolkit) for developing native applications that use HTML/CSS for the GUI? To minimize overhead, I do not want to start a full browser session. (That's not very good desktop integration.) I am particularly interested in answers for native JavaScript or Python 3, but any language would be alright (easier to learn a new language than a new GUI toolkit, in my book).
Edit: I have found this page, but have not had time to read it all or test it. It linked to Python XULRunner, but again I have no previous knowledge of it.
This was asked on Ask Ubuntu back in August of 2011.
In summary, the options are:
SeedKit
The JavaScript bindings for GNOME.
There are more options, but those are the two "big ones".
You can write native apps in HTML/CSS and Javascript using node-webkit, is an app runtime based on Chromium and node.js, you can use node.js modules into your apps. it's available on Linux, Mac OSX and Windows
I would like to add QtWebKit to the list. It's like SeedKit with better support.
I'm using it personally on a project where we have native (C++) code for the data layer, business logic and the presentation layer is done via HTML5 and heavy use of JavaScript. As far as I know Qt can be used with python as well so perhaps you could use it for all the business logic.

Using Java/Python libraries in programming Firefox/Chrome Extensions

I have an idea of studying user behavior on the browser, for which I intend to make a Chrome/Firefox extension to study the behavior dynamically. I have some predefined libraries in Java and Python to analyze the results, which will be impossible to program in plain JavaScript.
Now for my question: is it possible to use third party libraries, especially those of Python or Java like plain function calls?
I have a vague idea about something like Java XPCOM or PyXPCOM for Firefox. However, for a beginner, it all looks so scary. I started making Add-On for Firefox, but got lost somewhere in the huge API.
I found Programming Chrome extensions easier than Firefox, but I couldn't come across something similar to XPCOM in Chrome.
How can I decide which one to go for?
Chrome - seems easy but I am not sure of its power.
Firefox - Seems powerful, but is it really possible to use any Java/Python Library?
Additionally, I came across this link that may be useful: How does someone use thirdparty libraries to be included in Firefox addons/extensions?
But seems like it mostly talks about C++ and XPCOM.
I have a vague idea about something like Java XPCOM or PyXPCOM for Firefox. But for a beginner, it all looks so scary.
I am not a beginner and JavaXPCOM/PyXPCOM are very scary (in addition to being barely maintained). As Firefox goes, it should be much easier to wrap your Java/Python library in an application and run it as an external process: https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsIProcess. Note that you cannot get data back (other than an exit code) so the application should write it to a file that you can then read in your Firefox extension. Not very elegant but it has the advantage of being doable.
As to Chrome, its extensions run in a sandbox and using Java or Python isn't possible. Only option is adding an NPAPI plugin to your extension. It is binary code meaning that it could do anything.
When writing Chrome extensions, you're limited to JavaScript unless you choose to use an NPAPI plugin, which lets you do pretty much anything, but is not recommended.
The other approach you could take is to implement your Java or Python code on the server and make requests from the chrome extension's JavaScript.

Is there a free Help Authoring tool available for Eclipse?

I need to write on-line help (Eclipse help format) for an Eclipse plugin. I tried out the evaluation of Help Composer that comes as part of RCP Developer from Instantiations and it pretty much does what I am looking for. However at $500 per license it's way overkill and over budget for my needs.
Surely there must be some other tool for managing the help project, assembling the various files, table of contents, and editing the html documents using WYSIWYG.
Does anybody have any suggestions for what plugin(s) I should add to a basic Eclipse 3.5 install to give me full authoring capability?
Thanks in advance!
I know that my solution is not entirely what you need, but you should have a look at Mylyn Wikitext .
It uses a simple markup with good editor support and is also capable of exporting to Eclipse Help format.
I gave up looking for free since all the available tools have a lot of shortcomings.
I decided to use Adobe RoboHelp 8 since it has one of the nicest editors that I found. However, the main benefit for me has been that it automatically updates links in all pages if I rename or move a topic (which I do a lot).
When I want to generate the Eclipse Help file, I use the script that they provide.
For a large documentation project, we used Latex in combination with plastex. This allowed us to generate PDF, Eclipse Help and HTML from the same sources. Cross Referencing, which seems like an issue for some readers, is handled, as well as indexing and other cool stuff. Getting it to work was a bit tedious, but it was a good solution, as the documentation contained a lot of formulas.
This was an open source project, so everything is available - feel free to use and adapt as you see fit:
Result (HTML, PDF, Eclipse Help: http://handbook.event-b.org/
Code: https://sourceforge.net/p/rodin-b-sharp/svn/HEAD/tree/trunk/Handbook/
I don't think it exists in eclipse, but try the MS one (free):
Here is the info: http://msdn.microsoft.com/en-us/library/ms670169(VS.85).aspx
Here is the download: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=00535334-c8a6-452f-9aa0-d597d16580cc
Then you can convert to eclipse format: http://home.amnet.net.au/~ghannington/hh2e/hh2e-readme.html