Trying to solve how to provide an in-game Web View in a Windows Unity project. This will be used for payment-processing - Paypal/Braintree/Stripe etc.
The following can be used to open an external web browser from within Unity:
Application.OpenURL("http://www.example.com");
But this doesn't fit customer requirements as it must be in-app.
All of the ready-built solutions I can find are merely wrappers for native WebView capabilities of iOS and Android, and therefore do not support Windows.
Very interested to hear some inspiration on how to tackle this one!
Related
I have a windows c# application for which I have previously developed a web client (HTML/JS) which accesses the shared data through an oData REST service.
I am now looking to move the entire application to a single platform across all devices. This will be native to iOS and Android, but I am looking to share code as much as possible. I am not interested in hybrid apps.
The two viable options are Xamarin and React Native. Although I hate Javascript, I am leaning towards React, simply because of momentum - the xamarin team seems to be very small and there is not a lot of evidence of extensive support for the xamarin platform from within microsoft.
My concern with React is - although it seems that it will get the job done on iOS and Android, it is not clear how you can run applications on PC/Mac. I am aware there is UWP / WPF support but am unsure if this is of any quality. I expect the best solution would be to run it in a browser on non-mobile platforms.
Is this possible with React Native, and is it something you could use in production in the foreseeable future.
Microsoft ReactXP is exactly what you are looking for.
Although it is still very young (first release at 22 Apr, 2017), Nader Dabit did some really excellent works on it.
Video Tutorial Here
EDIT 1 2017/01/29 - At the moment our choice has gone to electron in combination with EdgeJS and all the power of NodeJS and the packages/resources on npm there.. There is no better alternative for us to create cross platform apps for all three plyers (macOS, linux and windows). Thanks everyone for their input.
ORIGINAL Question:
TL;DR - Backend code written in C# (.Net/Mono). Writing a desktop application that needs low level access to the system (cross platform OSX, Linux, Windows 7 to 10). In search of a one-stop cross platform UI tool/framework that can interface with the status of the backend-code, either by polling/messaging or calling into the code of the backend code. This "backend" includes for example the scanning & listing of process info, taking screenshots, etc.. Sending network information (which websites were visited etc..) It's in essence an exam monitor for students when they're doing an online exam in classrooms.**
Options we are exploring:
electron (formerly known as atom shell) looks nice, but we have no idea whether it can interop/call into/kickstart a C#/Mono application. Posted this as well on their official forum for feedback, and whether it is a good use case for electron. In an ideal world, we'd like to use electron fully, but unfortunately I think we need platform specific logic (which now we handle in C# w/ .net & mono).
Eto.Forms is what we work with now, but is limiting in it's UI's capabilites - as sometimes it still renders differently (sizing of windows) on different platforms. It also has a different look & feel that's tied to the platform of the user - which is a good feature, but it makes it difficult to make dedicated controls to visualise status, which would be easier in html/css.
Another route, is a mix between Eto.Forms (or something else) to bootstrap a native UI that hosts a browser in it's window that cross platform and not dependent on the locally installed browsers, such as Awesomium. This would still require Eto.Forms, or any other bootstrapper to kickstart the application, but all other navigation would go through the Awesomium rendered html.
Thanks,
Yves
AvaloniaUI (A cross platform XAML Framework for .NET Framework, .NET Core and Mono) would be a perfect choice if you are familiar with WPF.
There are many other frameworks to develop cross-platform desktop apps. You can checkout my github repo electron-alternatives for more cross-platform desktop development options.
Xamarin Forms is my framework of choice. https://visualstudio.microsoft.com/xamarin/ It's made for mobile but was extended to include desktop as well.
I'm currently building a C#/XAML app and I've looked around on google for a solution but I mostly find scripting engine that are not compatible with WinRT/Metro/Windows App Store applications
I would like to be able to pass in an object into the script for processing and provide an API that can be invoked to fetch additional basic information from the Script.
The main reason I am looking into Scripting Engines is we would like to be able to modify a small amount of the application's behaviour without having to redeploy or update.
Similar scripting engines include nashorn and JavaScript Core, the scripting language itself is a secondary concern.
I want to develop a windows based application in silverlight. I went through many articles and every where I found that "Silverlight is for web based application". I don't know whether I am wrong or right, as my superiors told me that in Silverlight5 we can develop Windows based application. Can any body help me to give a clue for how to start. Any help would be highly appreciated.
Thanks in advance
If you mean a Windows based application which can connect with internet you go for Out of Browser application which silverlight supports but if you want simple plain desktop application, there is no point in using Silverlight, WPF would be the right choice in that case.
Look at this article for building an out of browser app using Silverlight.
Silverlight specializes in building rich UI based Web applications and WPF is best for making UI rich applications for Desktop.
You can run silverlight apps "Out Of Browser", its just a setting in the config. Here's a video with more info: http://www.silverlight.net/learn/videos/all/out-of-browser-experiences/
silverlight is a web-based technology that runs on the client machine. it is, basically, Microsoft's version of Flash.
Now, that being said, you CAN write silverlight apps that run out of the browser. but, they are not "really" windows apps. silverlight is a sub-set of WPF. However, you can also make WPF apps that run in a browser. Confused yet?
The bottom line is that WPF is for desktop apps and is full-featured with access to the machine resources.
while silverlight is a light-weight version of WPF that is intended to be run in a browser, similar to flash. it does not have all the features of a full desktop application due to security model and that sort of thing.
Both have elements that cross into the domain of the other.
Like all good things, the answer is "it depends on what you're trying to do". If you want an application that can run inside the browser, outside the browser, plus on Windows and Mac then Silverlight is the answer. You also get for free/are restricted by a security sandbox; you can get around this sandbox by requiring additional permissions from the user. If you're trying to do something that requires multiple monitor support, access to COM objects, stroke/pen/stylus input, 3D hardware acceleration, or access to a large local file store then WPF is probably the better answer. Silverlight out of browser applications also have a nice "phone home" feature that will automatically download updates; WPF requires you to roll this by hand.
Some folks have mention XBAPs (running WPF inside of a browser). Stay away from this error prone steaming pile of stuff. It's good for demoware, but is not something which you'd want to support.
You heard right.
This is called "out of browser":
Silverlight-based applications typically run within Web pages, but you can enable users to install them from the Web and run them outside the browser.
I have a project where I need to build a C# application that is able to run in iPhone, Android and Windows Mobile.
For windows Mobile that is no problem, but I think its a challenge when we try to develop for Android and iPhone.
I've been searching for solutions and i found some information about Mono-Android and MonoTouch.
My question is, has anyone used this API's? Are they good?
Do they really take advantage of Android/iPhone native api's?
Can I with only one source code create an application for both platforms?
And finally, is there any other way of creating a C# application for these mobile platforms?
Yes they are very solid. They give you .NET 4.0 with all of that capability & the ability to share data access, networking/API integration, and business logic in shared assemblies. You'll of course have to write the user interface portion of the applications in C# but specific to the platform.
For example, MonoTouch is like Cocoa in C#. It will feel unlike your typical .NET programming style, so make sure you get comfortable reading Objective-C for documentation & assistance.
Also recommended is to follow the UI guidelines of the platform in question. Don't create a cookie cutter app for all platforms or it will suck everywhere.