TideSDK and dependency on SDK - html

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.

Related

Is it possible to create a portable UWP app (=no installation needed)

The UWP infrastructure seems to have everything what's needed for a portable model.
Clear separation between os and application
Clear separation between different applications
Less dependencies
Support portable class libraries
As far I know portable scenario's are not supported right now. Is it something that we can expect in the future or is it intrinsic impossible due the architecture of UWP/WinRT
How hard would it be to create some kind of host executable that can run any local UWP app. At the moment I'm looking for portability between different Windows 10 PC's. Not so much cross device or cross OS.
I'm aware you can side load UWP apps, but that's not what I'm looking for.
Is it something that we can expect in the future or is it intrinsic impossible due the architecture of UWP/WinRT
I don't see any major technical limitations that would prevent this scenario. UWP apps can register to some global mechanisms (which is something portable apps shouldn't do), like push notifications or background tasks, but the whole application model has been designed so that users can limit access to those features on a per-application basis. So every developer publishing an app is supposed to have considered beforehand that those code-paths may fail.
But "technically possible" doesn't mean that Microsoft will do it. In fact, I seriously doubt they ever will. The reason is simple: they're pushing the store with all their might, even seeking to put Win32 apps on it. Clearly, they're moving towards putting more apps on the store, not the other way around.
As to know whether it'd be possible to make a third-party standalone runner, I think so. When running unit tests for an UWP app, Visual Studio is launching a sort of "shell" hosting the app (it has become very apparent recently because after an update of Windows 10, the API that allowed to hide the splashscreen wasn't working anymore). I don't know what API is used to create this shell, but I'd definitely dig that way if I wanted to make a portable UWP host.
Although I haven't done this myself (will update answer if and when), reading this article makes it look like there is an easy way to create an installer that calls that command.
In short, an appx package can be installed locally using the command:
C:\Program Files (x86)\Windows Kits\10\bin\x86\WinAppDeployCmd.exe
Which can probably be wrapped in a UI or CMD installer.
Here's nice example of it (not mine).

How does the mozilla stub installer works?

I'm currently working on a no-touch deployment and auto-update mechanism for a Windows application. I've tried Microsoft ClickOnce strategy but it did not work for me as the strategy only suits small-sized apps, and my application hauls at ~500MB.
I'm interested in how the stub based installation and update strategies work for Mozilla Firefox and Google Chrome and also Microsoft's packages including its .NET framework and VS installers. I've come across Google Omaha which hosts the Google product update deployment mechanism, but it is not very conclusive for me.
Can anybody please help me out how the stub-based deployment design works?
P.S. Any open source code for the same would be of a great help. ;-)
I'm not quite exactly sure of what you mean by "stub-based". There's a handful of technologies and tools involved in what I understand you want to accomplish. For the setup packages creation there are: NSIS, Inno Setup and the WiX Toolset, for example. A core technology is MSI. On the other hand, for application updates and the such, there's BITS and also some web stuff involved in updates publishing, like using an ATOM feed, for instance (your referenced Google Omaha might fit into this category).
It's only a bunch of pointers, but I hope it helps.
The Mozilla installer is opensource (as is the NSIS system it uses) so I'd suggest adapting the code found here: http://lxr.mozilla.org/seamonkey/source/toolkit/mozapps/installer/windows/nsis/
It's a bit complex so you could start with a simpler script and incorporate the bits you want (like finding/downloading updates and UAC evelation).

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.

MVVMCross Vee Three Solution

This could be a really dumb question, but I just can't seem to open the v3 solution file.
I experienced something similar on the vNext, but after an hour or so it resolved itself and seem to set itself up ok for future access. This v3 has been running overnight and still not loaded.
Any suggestions?
Thanks
Lee
Really you need to supply more information - what operating system are you on? Which development environment(s)? Which SDKs do you have installed?
V3 is currently being developed in Xamarin Studio (v4.0.2) on the Mac for iOS and on a custom build of Xamarin iOS and Droid plugged into VS2012 Ultimate on the PC - with WP7.1 and WP8 SDKs both installed, and with resharper (and a smattering of other code too)
I've checked in a lot of code in the last 24 hours - so it's worth getting the latest again from source control and seeing if that helps.
If it doesn't then is there any more information published to the output windows about what is going wrong? I've personally had a lot of problems and a lot of wasted time with the Xamarin plugins in VS2012 - the activation modules are a nightmare (which is why I have a custom build currently installed)

Best Desktop Deployment technique for small Java applications

I am planning to develop a GUI Frontend for mixminion in java using swing(it would be something very simple nothing big). After making it what would be the best way to deploy it on windows for average users who dont even know whats java(leave alone JRE).So asking them to separately download JRE is not an option. I also want to keep the download size to minimum coz it will downloaded through internet so i cannot bundle JRE with installer.
Using Jet to compile it into a native code is not an option bcoz its not free.
Any suggestion would be greatly appreciated.
Thanks
If your really need to create a native app, the GNU Compiler for the Java can produce native machine code. I have no experience using GCJ and the latest news on the website is from late 2009. So this advice comes without warranty or guarantees... However if want to try:
http://gcc.gnu.org/java/