I have an official page in WeChat, also an in-app which is HTML5 bassed.
I also have Android and iOs application.
I want to have a button in the native application, that will launch WeChat browser with the html5 url.
I understood that in the web I can use url scheme to do it like this:
weixin://dl/businessWebview/link/?appid=%s&url=%s
is there a way to utilize same functionality in native android / ios application?
Related
I would like to compare native with cross-platform technology.
I am writing Kotlin Android Native application and is it possible to easily open it in browser like Chrome and it will work similarly like web application in Flutter?
My goal is to write native application with possibility to launch it on 'normal' browser on computer.
Let's start with concepts
PWA
Progressive Web Application, as a summary is just a web with special javascript that make it possible the use of device(desktop/mobile) hardware features and/or css files with effects that make the web look like a native application. At the end is just a web application running a on remote server usually with a domain like www.acme.com and accessed through a web browser.
UI Form elements are just html
Native mobile application
It is an application, developed with java or kotlin for android and Objective-C or Swift for ios. Result is an .apk or .ipa containing usually non readable files. This kind of application cannot be opened using a web browser.
UI Form elements are native components, not html
Mobile web browser
In a mobile device we have web browsers like opera, chrome, firefox, safari, etc. As we can notice, this are native applications capable of open any web page through its url. This is the feature provided by mobile devices used in the hybrid applications.
Hybrid Applications
A hybrid app is a software application that combines elements of both native apps and web applications where the core of the application is written using web technologies.
As a extremely summary, this apps are a kind of web browsers opening just one url, without the address bar, which uses new device features to trick the user by displaying a website as if it were a native application
Usually the web application which is loaded in the hybrid applications are pwas or similar.
UI Form elements are just html.
Sources:
https://ionic.io/resources/articles/what-is-hybrid-app-development
https://www2.stardust-testing.com/en/blog-en/hybrid-apps
https://easternpeak.com/definition/hybrid-apps/
Your question
How to run Android Apps in a computer browser like PWA App?
No, you can't. If you app is developed on a native language (android sample)
Button btnTag = new Button(this);
btnTag.setLayoutParams(new Layout...));
btnTag.setText("Button");
btnTag.setId(some_random_id);
There is no way to open it in a web browser of the same device and much less on another desktop browser.
Workaround
If you application is a web with a valid url and you achieve to develop a kind of native app with features of browser (like WebViews for android and wkWebView for ios), but hardcoding the url and hiding the address bar , you will have:
a web able to opened directly any desktop browser
a native app able to be opened on any mobile phone.
Keep in mind that the look & feel of your web should be similar to a native application like Material Design for Angular or React. Also should have advanced features like service worker in pwa. Without them, your user will notice that is a web and not a mobile app.
Don't reinvent the wheel
The previous explained workaround is exactly what the following frameworks do but with steroids. The result app is called sometimes "hybrid applications". Basically you just develop html + javascript and the framework will package your code as a standard web, native .apk for android and native .ipa for ios. Here some frameworks:
Apache Cordova
React Native
Flutter
Ionic
Phone Gap
Unity (games)
Apache Flex
image source: https://www.statista.com/statistics/869224/worldwide-software-developer-working-hours/
I'm developping a mobile app in Ionic 5 cordova, and in my app I use an iFrame.
I would need to know what browser is used in Android and in ios.
I ask that because I'm using Stripe Payment Request Button in a webpage embed by iFrame and the button is shown when I open the app as a PWA, but not when it is build as an android/ios application.
When I look at the requirements for the Payment Request Button to work, it say that I need a browser compatible to Gpay/Apple Pay. Since I have the button appearing chrome mobile and on chrome browser, but not when opening as my mobile app, I assume the browser use for an iFrame is not compatible with the Payment button ?
Apple Pay for the Web should be supported in a SFSafariViewController on iOS.
Google Pay for the Web is not supported in an Android webview:
For Android apps which use WebViews, you must invoke native Android Google Pay APIs. See Binding JavaScript code to Android code for examples.
We have a responsive web application for desktop users and it is working fine. My organization also has native android app. Now, the requirement is to integrate responsive web app with native android app (using webview). Same time, we are looking to access some native features of device like capture photo from web application.
We suggested to use phonegap but don't know how we can integrate phonegap javascript api with existing web application without creating phonegap/corodova application. Idea is that, user just hit the native app button and on listener it will invoke webview with webapp url. By checking user agent we will be able to load phonegap JS api and it will be able to access native features.
Issue is that, Don't know whether it is possible or not, if yes then how we can enable phonegap api in existing web app. Desktop and mobile user will get same experience.
Use WebView component of phonegap in your application, read documentation
http://docs.phonegap.com/en/3.5.0/guide_platforms_android_webview.md.html#Android%20WebViews
I want to develop a web app that will work in a server. Using apache or gunicorn, or something similar.
Now I need to know if there is any way to make a "native app" that will redirect to the web app.
Basically the native app redirect to the responsive web site that will run inside a webview. The native app only is needed to provide a a shortcut to the web app in the smartphone and also add the option of install in apple/android store.
This is possible? I can develop this "native app" with phonegap, but I need to embed the responsive web app powered by apache/nginx/gunicorn.
Any insights about this?
This is what people doing on my office :
They created a responsive web.
They created a native app (not hybrid), in other word : they use eclipse/xcode
The native app basically is just a full screen WebView
With this, they successfully employ android & iOS native apps only with WebView and upload it to their respective store.
I know from here that when I put a fb://... link on my website it opens the native Facebook App (on iPhone and even on Android).
But how is it possible to put some parameters to this link? I want to make a share button, with a text/title/image. The user should be able to review it, but when he is lazy he should also be able just to press "Post it".
EDIT: My App is an webapp, it is just reachable through the browser (PC or mobile) or through an WebView of a native app (iPhone, WindowsPhone, Android).
You should use the native share dialogs with the Facebook SDK.
https://developers.facebook.com/blog/post/2013/07/11/four-reasons-to-upgrade-to-the-new-share-dialog-for-ios/
Here's the iOS documentation: https://developers.facebook.com/docs/ios/share-dialog/
Here's the Android documentation: https://developers.facebook.com/docs/android/share-dialog/