I would like to know by any chance I can differentiate the PWA pages from mobile browser and PWA app. My requirement is to show a different page on with the information to Add to Homepage option when app opened on mobile browser once the user added the App on homepage then it should act as normal mob app.
I see there is a start url given on manifest and I tried to change it with no expected outcome... Pls let me know how to do it.. any practical example would be really helpful
Changing start_url is the correct way to do this. For example "start_url": "/?source=pwa". Keep in mind though that for a PWA installed via a browser you will generally have to uninstall the PWA shortcut and install it again for the manifest.json cached on the device to update.
Related
I am struggling to utlise the angular-auth-oidc-client to add OIDC workflows into my Ionic app (android), although I feel the issues are more Capacitor so not sure that the library is the issue. There are numerous (old) posts on Google of people who have had similar problems, so I'm trying to ascertain the current state of play. I can:
By utilising a custom android scheme in my AndroidManifest, and an 'appUrlOpen' listener in app.component my OIDC login page loads in the Chrome browser on the device, and then returns to the Ionic app and opens the correct app page. Unfortunately because I've opened the login in Chrome it hangs around in the background with the username and password populated. I've no handle to it to close it, and the Capacitor plugins don't help me here.
Alternatively, I can add my ID Provider domain into 'AllowNavigation' in capacitor.config.json. This opens my login page in the app's webview, begins the redirect on successful login but fails (hangs) because Capacitor is not loaded when it attempts Window.Capacitor.triggerevent calls.
This is probably classed as a poor question, and I appreciate that it is light on code, but I'm interested in whether anyone has actually managed to do this successfully, as there are so many dead ends on google and github of people who've given up!
Yes it is possible to complete an Open ID Flow on ionic with capacitor.
You need a capacitor plugin to do so, ionic provides an own payed plugin (https://ionic.io/docs/auth-connect), other alternatives exist.
angular-auth-oidc-client out of the box works only on browser, not on iOS or Android. It seems that some adoption can be made, see https://github.com/damienbod/angular-auth-oidc-client/issues/807.
Problem is that when user installs the home screen app from google form a link such as wen-el-sahra.web.app and then a link such as wen-el-sahra.web.app/home is clicked it opens in home screen app but if wen-el-sahra.firebaseapp.com/home is clicked it doesnot open in homescreen app. Thanks for your help in advance.
This is not a bug or a problem to circumvent. Instead it has to be handled inside the app to work on the same origin. For a detailed explanation on why this is not the case please read this article on multi-orign-pwas.
So I would suggest to work with only one domain or as in the above mentioned article request user permission to register each sub-domain while installing the PWA initially, if this is possible.
I assume you are using firebase hosting. So always works with the available registered domain. That way there is no need to expose the web.app and firebaseapp.com domains to the users. In this case always work with wenelsahra.com
I am developing a firefox os packaged app. For my app what will be the values of red marked portions. Please see the following picture.
I think you should be able to put the URL of your application if it's a hosted one or the URL of your website for App Domains. As for the platform, choose the website. Let me know if it's working.
I'd like to be able to send invitation in an email to a specific "event" happening inside my iOS app. So I figured I'd need to use custom URL. That's fine.
But I'd also like to be able to handle the user that doesn't have the app installed yet, to be taken to a mobile Safari and to the webpage with installation instructions for the app.
What would be the best way to do it?
I could try the following:
In the email I send a link to a http://www.example.com/joinevent/?id=foo
User is taken to a Safari webpage that sends a redirect to mycustomscheme://joinevent/?id=foo
If the user doesn't have the app installed this redirection won't work and he stays in the Safari - I could then handle the displaying of installation instructions probably.
But this approach doesn't seem "natural" for me. Is there a better/more native way to do it?
Try http://rdrct.it
It is a web service that allows you to achieve exactly this functionality very easily.
Full disclosure - I created rdrct.it
Here's the basics:
Login to the site, create a project for your particular app. Choose a unique code (this could be the name of your app).
You'll then be provided with a URL in the form: http://rdrct.it/uniqueCode
Once you've done that, you need to register the app's ID in the app store, and also details about the custom URL scheme. Tick "Auto-redirect" - what it will then do is try to open the app, and if that fails, it will automatically send the user to the app store.
If the app is opened, then the querystring is also passed to the app, so in your example case, the device will have been served: mycustomscheme://joinevent/?id=foo
It also works across multiple device types, so if you have the app available for Blackberry, Android or Windows Phone, then it will also do the same for those depending on which device type the user is using.
Like I said, I created it, but it should solve your problem.
If you are using Distimo to track you app analytics, they provide a shortlink to your apps that can be used also used to track conversions. It shows a custom page depending on the device used to access. This is especially convenient if you have the same app published in the AppStore, Google Play, Amazon, etc.
The safari browser lets you add an icon to the home screen as a bookmark to whatever webpage you happen to be on. I would want to do that same thing, but in an app I develop. So basically, the user would launch the app, do a bunch of stuff and somewhere along the way, a web clip would be created and pushed to their home screen (with their consent of course). Is this possible, or is it a feature exclusive to the Safari browser? It seems like this sort of thing could be done, but it also seems like it could be viewed as spam and therefore a reason for Apple to reject the app outright. Is this sort of thing feasible? If so, I would be very thankful for a link on where I could read up on how to go about it.
It seems unlikely that the iOS app security sandbox would allow an app to directly add web pages to the home screen.
Best bet might be to upload the webpage to some site, and then launch Safari with a URL to the webpage on that site, after requesting that the user manually "clip" that site using Safari.