I'm building an app in NativeScript {N} where I'm implementing a webview.
All of this is working fine, but in my webpage, I would like to get some JS debug statements. How can I see the webview console.log output?
Previously I was able to "inspect" it through Safari, but that option is not presented in the "Develop" menu anymore.
If like me you could not figure out how to do this using the webview proivded by nativescript you'll need to install this plugin to get what you need.
https://github.com/shripalsoni04/nativescript-webview-interface
I provides a lot more features more than the stock. Basically, it allows you to emit events to the android from the webview layer. The author provides a good tutorial on this.
Related
So I'm trying to migrate from using UIWebView to WKWebView for Xamarin Forms iOS but I have a few questions because this all seems to be pretty new and none of the resources are helping me online.
https://github.com/xamarin/Xamarin.Forms/pull/7367
I came across this link though, and apparently the WKWebview is not the default for Xamarin.Forms for 4.0+ and so,
1) I'm currently using Xamarin Forms 3.4.0.x. From my understanding, is all I have to do to get the WKWebView upgrading to 4.4.0.991477, the latest build?
2) Follow up to question 1, how would I not change any code because my cs files contain "using UIKit", which is the namespace for UIWebView, is it not?
3) In this link, it seems like there is no design change at all.. but I thought that WKWebView contained a URL link at the top of the page, which UIWebView does not, which is correct?
Thanks!
1) If you have only cross-platform code, then yes there is nothing that you need to worry about, it just works.
2) As you suggest that you have UIKit in your code, then obviously that won't work. UIKit is not Xamarin.Forms API and basically you don't use Xamarin.Forms in this case, but rather Xamarin.iOS.
3) Neither of those controls display URL.
I need to detect user's inactivity time in NativeScript app.
I tried with few plugins (like ng-idle) but they are not compatible with NativeScript.
I also tried to to emit application level event (in page router outlet) but it is not working either.
Any help will be appreciated.
In the mobile context, you would like to track the inactivity in the native mobile application lifecycle. For Android, you can extend the Application and implement some of the solutions shown here. Following this approach, you can do the same on iOS (overwrite the AppDelegate as shown here and implement some of the native solutions)
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.
Is it possible to use a Chromium webview instead of the native webview on OSX?
I am guess it is a products like Sencha Desktop Packager exist.
As far as I can tell there drop no convenient libraries/wrappers, but most searches for OSX dev return results for a certain handheld device.
Note
So far I have found CEF and CEFSimpleSample
It's possible to use a Chromium webview instead of a native webview. But the documentation to code such a thing is very rare and poor.
The Chromium Embedded Framework Forum is a good place to ask questions.
I would highly recommend you to alter the CEFSimpleSample because there is a "Chromium Webview" included which works.
I am writing an app using PhoneGap framework. The main screen has four buttons and if I click the first button, a native app that has been written to show a Map in MapKit should execute. How to invoke this app from a javascript call?
Any thoughts?
Yes, you need to write a plugin for that feature.
For calling a external .xib you can look at some of the code from the ChildBrowser plugin.
There is also a MapKit plugin available:
you can do this by using the plugin architecture of phonegap.
Here is the wiki entry for writing phonegap plugins for iOs: http://wiki.phonegap.com/w/page/36753496/How%20to%20Create%20a%20PhoneGap%20Plugin%20for%20iOS