Ionic PWA "Add to homescreen" not working - ionic-framework

I followed the beginner article for building Ionic PWAs:
https://www.joshmorony.com/the-bare-necessities-progressive-web-apps-in-ionic/
At what point should I see the "add to homescreen" option? I hosted the contents of the www folder on a development server with an SSL connection and domain name. The app works great, but I don't get presented with the homescreen option.
When setting the option for "display":"fullscreen" in the manifest.json, shouldn't the browser address bar disappear when accessing the web url of the hosted application?
Thank you in advance!

Okay, I got this working.
Make sure your on https and have a valid ssl cert
If your app is in a sub-directory, you need to add a scope parameter to your manifest (this is why mine wasn't triggering) and you need to start_url parameter should reflect that as well
Test te app in browser first:
https://developers.google.com/web/fundamentals/app-install-banners/
Let me know how that goes!

Related

Firebase "Email link sign in" using "Custom domain" is not working. (for Flutter passwordless authentication)

Issue: When tapping on redirect link it gives Page Not Found.
What is expected: Tapping on the redirect link sent to your email should open up the app if it is installed.
Have tried the suggestions from most related solutions on StackOverflow and GitHub.
My custom domain in Hosting:
It is also authurized:
Dynamic links I made:
ActionCodeSettings URL prod project: https://myprodapp.com/login/welcome
firebase.json:
added to info.plist:
Associated domain for iOS
Callback URL:
Android
iOS
Need to mention we have two firebase projects connected to our flutter app - one for the development environment (dev) and the other for the product environment (prod). Passwordless sign in with the firebase default domain works on dev environment for only Android. So seems the coding part works fine.

Why does a PWA based on Workbox produce an error when launched from the homescreen on iOS 12?

I can run the app in the browser after clearing data, but if I then add it to the homescreen and attempt to relaunch from there, I get a plain page giving the following error:
Safari cannot open the page. The error was: "FetchEvent.respondWith received an error: Returned response is null."
Subsequent launches in the browser then also give that error. I have to again 'clear data' in the browser to get it to work again.
I'm using Workbox v3.6.2 (the latest, at the time of writing), and my iPhone is running iOS 12.
This looks suspicious, but it's a bit over my head (well, the workaround is anyway). It makes me want to try to down grade to iOS11.X again, and/or install Technology Preview 59.
I have this same problems. On iOS 12.0.0 work properly but after updating to version 12.0.1 I have this same error like you. I have test this same application but on two different devices (iPhone) with two different version of iOS.
Looks like there are multiple possible reasons for this error - I've had it twice ;
Occasion 1 : Needed to add a ROOT certificate and set it as Trusted on device.
my conditions;
I was getting the same error on an iPhone 5s with iOS 12 when loading pwapp from local server.
Using self signed certs on a development machine for server.
Not using Workbox.
Not getting problem if loading pwapp from provider hosted server with ssl cert from iOS recognised cert authority.
Turned out it was to do with security certs - (not using a mac so can't debug to the level of network/security issues on the device / direct to fully diagnose).
Fix was to ;
create a self signed root cert and use that for my server.
convert (copy of) root cert .pem file to .der
access .der via safari on the device / add profile, set as trusted.
(Correct way is to do root, intermediary and server certs , use the server cert and serve the root cert via url or email it to email client on device.)
useful links ;
see Getting cert in General->About->Certificate Trust Settings
Occasion 2 : Turns out you have to access the pwapp from the home screen icon at least once while you have access to the server.
To reproduce ;
(networking on)
delete icon from home screen and clear safari history and website data
visit the pwapp url
add to home screen but do not launch
turn off networking
attempt launch from home screen => get the error
turn on networking, launch pwapp from home screen => ok.
close pwapp, turn off networking, launch pwapp from home screen => ok.
So looks like an iOS/Safari/Webkit bug

New preview for MSAL login redirect for Xamarin droid fails

I'm using Xamarin Forms in Visual Studio 2015 with the new MSAL preview v.1.1.0. The app calls the PublicClientApplication.AcquireTokenAsync which pulls up the login form in Chrome on the mobile device. The login is successful, but when it redirects I get the error message "This site can't be reached. The webpage at msal[my app id]://auth/?code=[auth code]... might be temporarily down or it may have moved permanently to a new web address.
When stepping through the app I see that the PublicClientApplication's redirect uri property is set to msal[my app id]://auth. And that is the same custom redirect uri that I entered into the Azure B2C tenant application.
Does anyone have any suggestions from that error of what I should check? Thanks.
OK. I figured it out. I missed the instruction in step 6b on the new sample app: https://github.com/Azure-Samples/active-directory-b2c-xamarin-native‌​. There needs to be a BrowserTabActivity added inside the application element of the AndroidManifest.xml file. See the link on github for specifics.
You should check out the Integrate Azure AD B2C into a Xamarin forms app using MSAL sample.
This issue generally has the following causes:
You haven't configured your RedirectURI correctly in your AndroidManifest.xml, double check that you've populated both the scheme and the host correctly, where scheme only includes msal[APPLICATIONID] without colon, slashes or 'auth' and the host while the host only includes 'auth'
You haven't configured your RedirectURI correctly in your MainActivity.cs, double check that it matches the full redirect URI, meaning that it does include colon, slash and 'auth' like so: msal[APPLICATIONID]://auth
You're missing the OnActivityResult method that calls the AuthenticationContinuationHelper.
You need to use Chrome which is not installed on all images inside your emulator.
Running in an Android Emulator
MSAL in Android requires support for Custom Chrome Tabs for displaying authentication prompts. Not every emulator image comes with Chrome on board: please refer to this document for instructions on how to ensure that your emulator supports the features required by MSAL.

Google App Engine: This application does not exist

I try to upload sample app to Google App Engine with existing progect ID.
Here is GAE screenshot
gae screenshot
I'm using the same ID in the progect.
But when I try to upload it with plugin from Eclipse then I recive an error:
eclipse error
The whole error from a console:
------------ Deploying frontend ------------
Preparing to deploy:
Created staging directory at: 'C:\Users\User\AppData\Local\Temp\appcfg2693799039714166602.tmp'
Scanning for jsp files.
Scanning files on local disk.
Initiating update.
com.google.appengine.tools.admin.HttpIoException: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=app1-152711&version=1&
404 Not Found
This application does not exist (project_id=u'app1-152711'). To create an App Engine application in this project, run "gcloud beta app create" in your console.
Debugging information may be found in C:\Users\User\AppData\Local\Temp\appengine-deploy7186088524405894873.log
Why I can not upload it?
This is actually the new intended behavior. App Engine will not be enabled for new projects until you go through the app creation flow in the Cloud Console under 'App Engine' to enable the App Engine service, or alternatively run gcloud beta app create from the console.
I just encountered this myself. The project has to be created in the Cloud Console AND you need to go through the project setup in AppEngine. Something must be broken in the API that creates the AppEngine part of the process while uploading. So doing it through the web interface creates the project for you... and then uploading will essentially fill it in.
It never used to be this way, so maybe something changed.
I have the same problem. This is what I did to solve it.
Log in to your google cloud account.
Select your project from the blue header bar.
Click the menu button(the 3 bars) on the top left of blue header bar.
Select IAM - you should permission for App Engine Service account. If not, you have to set it up.
To do that:
Click the menu button (the 3 bars) again
Click the App Engine
If you have not set it up, you will be prompt to do a tutorial.
Cancel the tutorial.
Go back to IAM.
Now you should see that the App Engine Service account added to the permission
Go ahead to upload. Should work now.
Make sure you are logged in with the correct Gmail account. At the bottom right corner of Eclipse you will see which account you have authorized, or you will see "Sign in to Google" - click on it to authorize Eclipse.

OpenID Error while testing asp.net app in My Developer Center

I am testing an application I developed using the .NET Devkit 2.0. In My Developer Center I am trying to run the connection tests in the Testing Your App section of the page. The OAuth test works fine but when I try to test OpenID I am getting an error.
When I click the "Test subscribe to app from Intuit App Center (OpenID)" it brings me to the company connect page, then I select the company, then it brings me to a free trial page of my App.
When I click "authorize" I am getting a 404 Error.
The URL points to: https://myserver.com/Error.aspx?aspxerrorpath=/myapp/OpenIdHandler.aspx
Where myserver is the name of my development server and myapp is the name of my application.
I am able to run the application from Visual Studio without a hitch. It connects and runs as expected but when I try it in the dev center it doesn't work properly.
Are my application settings correct?
Should I be pointing to OpenIdHandler.aspx in this instance?
App settings in the dev center:
App URL: https://myserver/myapp/Default.aspx
Disconnect Landing URL: https://myserver/myapp/Disconnect.aspx
Manage Users URL: https://myserver/myapp/Default.aspx
OpenID URL: https://myserver/myapp/OpenIdHandler.aspx
This is my first run at publishing to the Intuit App Center so any suggestions would be a huge help. I'm not even sure if the settings in the dev center are the problem or not.
Thank you
My firewall was not set up properly so it was not allowing any traffic to hit the desired pages of the site. Seems very curious to me that I was able to go to the default page but no others. Any way, it works now.