Building a webview wrapper app with Xamarin - xamarin

I wonder which is the best approach for building a webview wrapper application.
The app will load the website and nothing more. which browser engine uses Xamarin? Is it good to run a CMS website that contains chat, profile page, and many other complex features.
Any tips?
ps: I will use my own website not someone elses.

Related

Xamarin WebView erroneous CanGoBack on single-page app

I'm new to mobile app dev, so I'm not sure whether this is Xamarin related, or is it just a general limitation on webview controls, or whether this is specific to Android (only tested it on android...), or whether its me just not understanding the underlying tech thoroughly :)
I'm building an app that has a WebView to some site.
The site is built with AngularJS and utilizes the HistoryAPI for manipulating navigation.
I started experimenting with Xamarin for the implementation.
I used the WebView sample and just updated the url to point to my site.
But it seems the sample is not functioning as it should for navigation.
The CanGoBack getter always returns false on my site and it seems to be related to the historyApi navigation...
One more note - if I bypass the CanGoBack and just call GoBack the view actually goes back to previous page, but of course this is unacceptable...

QNAP Web UI - How to get the windows in a web app?

I am learning to write web apps. I am currently working on a project and recently purchased a QNAP Nas unit. The web UI for the admin settings is perfect for what I would like, but I don't know how to do the windows thing.
Basically you have a menu on the left of the web UI and when you select an admin option it opens a window that you can move around and minimize etc within the app. Does anyone know what technology this is? I don't mind RTFM but I jsut need to know what to read. I have googled and cannot find anything on whatever it is, probably because I don't know what to google for.
Something like this:
If anyone can point me in the right direction of what I can google or read up on that would be great.
You need JavaScript application framework for building interactive cross platform web applications using techniques such as Ajax, DHTML and DOM scripting.
QNAP is using extJS.
Web Desktop demo using extJS that you were looking for.

How can Xamarin be used to wrap a web app as if it were a native app for Android?

Say I build a super mobile friendly web application that I want in the Play Store for Android users to be able to download.
Could I use Xamarin to:
Wrap the entire mobile app as a single WebView
Register for mobile push notifications
Essentially shortlining an MVP of an android app by using an existing web app? If so, is there any well-known process or documentation that demonstrates this?
Probably the best approach for you would be using Xamarin Forms with one or more pages containing only web views.
I don't love Xamarin Forms because usually for me Xamarin Android+iOS gives a better result in similar time, but your app would be so simple that doesn't make sense to do it with Xamarin Android.
Make sure that your web app will show only what makes sense to be shown in your app, otherwise you risk to see double header/footer, useless buttons... but if the website is yours adding a few parameters to change a bit the UI won't be a problem I guess.
Have a look at this example:
https://github.com/xamarin/xamarin-forms-samples/tree/master/WorkingWithWebview
Another approach is the use of Razor to build your pages in html directly inside your app, but if I understood well it's not what you need:
https://developer.xamarin.com/guides/cross-platform/advanced/razor_html_templates/
Although it is technically possible to do this as the previous answer has suggested. I would recommended firstly reviewing, the relevant stores guidelines on submissions. Apple for example will not allow a submission to their store of any application that simply mirrors the functionality of a website. I suspect Google's would likely be the same.
However that said, to answer your question, Xamarin.Forms would be appropriate for a simple application like the one you are suggesting. Or if you prefer to build to a specific OS, then in iOS with Xamarin you would use the Safari View Controller that was added in it's xcode 8.1 release. Android uses something similar as does windows.
EDIT:
You can use the Web View control in Xamarins Andorid native PCL project to encapsulate your mobile friendly website within an application here is the documentation:
Xamarin Android Developer link to Android Web View
As for push notifications, yes this is perfectly possible using Xamarin.Android. and varies on implementation depending on what you want to use as the back end to handle them, I.E. Azure's notification hub etc.

How do I make an App Inventor app be a target for Chrome Share web page?

This is for an Android app that I want to develop using App Inventor, to read the content of a web page when a user decides to share it to my app.
When you are on a web page, in Chrome, you have the option to "Share" it. If you click this option, you get a list of available apps on your Android device to pick from. How can I make my app appear on that list?
How do I make my app read the web page that is shared by the user to my app? I want to read the text, not render the web page.
Thanks.
This is not possible with App Inventor, unfortunately.

Is it possible to create an iOS 8 sharing extension that opens the website in its app?

I'm building an app, and I was curious if there's a way to open the app when you're on the website through the iOS Safari extension. So, if I'm on a post I'd tap the app icon in the share sheet and I'd pass that to the app to load the post in the app.
I know the Bing app can translate the current website and inject directly into the DOM, so I was wondering what custom logic you can implement.
There's really no way to open the app from this kind of extension. Extensions can't access [UIApplication sharedApplication], so they can't call openURL:. There's an openURL:completionHandler: method on NSExtensionContext, but it only works in "today" extensions. Share extensions can display a fully custom UI and can save data that's available to their containing app, but they can't actually open that app.

Resources