In most of the app, I've seen that whenever the new update is available, it is shown in dialog box as soon as the app is opened. I think it is not a push notification since the notification msg doesn't appear in notification bar but only in a dialog box with remind me later, cancel go to appstore etc option when the app is opened.
This is a common practice that doesn't necessarily use the store versioning support (often it doesn't). The app pings to a URL to check if it indicates a new version and notifies the user accordingly.
I intend to write a tip of the week about it in a couple of weeks.
Related
I'm building a React Native (with Expo) app and have a survey form screen that I want to have appear intermittently for the user to fill out. Let's call it SurveyScreen. I'm doing this by setting a setInterval to poll the backend server hourly for scheduling data to see if the user is due to fill out a survey. This will probably be done in the main App.js in componentDidMount
The above seems straightforward to me. What I'm not clear on is once the polling api determines that the user is due for a survey, how to have the app display SurveyScreen no matter what page the user is on in the app.
One point of clarification is should SurveyScreen appear immediately after receiving a green light api response or should the screen appear after the next user action, e.g. navigation to another page, tap a button, etc? I think either way would be fine at this point. Would love to know both ways if possible.
Any ideas? Thanks.
Update the state.
Example: you subscribe to api => event fires => you update state => survey pops up
You can use portal to easily position survey on top of everything.
I think i've found a blocker in my app development that i hope you can help me out with please.I am using a CN1 Local Notification and i want them to be triggered at an interval at a particular time. The LocalNotification sample project works but please can you answer this. How can i code it so that each local notification text n.setAlertTitle() is customised\different each day, from reading from a List? All the examples i read have static text.
I had thought of not making it repeat but initiating a new notification upon the user clicking previous one, but this would have the problem that if the user ignores the notification then no more would be sent, so i abandoned that approach.
Many thanks in advance.
The solution is not to issue a recurring notification and instead register several separate notifications. You will need to store and manage the notification ID's so you can cancel and replace them.
In order to change the text dynamically your app needs to run and the basic idea of the notification is that it occurs while your app isn't running so it must be static.
I have an app that uses AngularJS and Firebase (with AngularFire API), but I'm getting some problems with the $bindTo service. Sometimes users are loosing data because there is no good connection in my city, our internet is too slow. I was thinking to create an icon in my app that shows the user if its data was updated successfully or not.
How I was thinking to do it?
- Watch the object
- On data changed, the icon becomes red
- When data is saved on Firebase, returns an event that change the icon color to green
How can I do it? Is there a better way to deal with it?
Check out https://www.firebase.com/docs/web/guide/offline-capabilities.html
This gives example of how to check out connection status and event handlers to deal with such situations .
Our application is a one-page application created using ExtJs. For any user action, the browser tab is never reloaded and all the actions are performed using ajax. A user can open/close multiple ExtJs windows/panels within the same browser tab, and this way everything remains confined to the same browser tab.
Now, we need to integrate payment gateway in the application, which involves redirecting the user to the bank website and having her brought back to our application.
The issue is that when browser redirects the user, then all the application javascript code along with panels and windows get destroyed, and when the user comes back to the application then she finds it to be different from one she left.
As a solution to this, we were thinking of using following two appraoches:
Option 1. Maintaining the state of application - When user leaves for the bank's website then somehow we maintain the state of application - like which windows are opened carrying what data, which variables have which values etc.. and when user returns back, we generate the same application state for her.
Option 2. Have a browser pop-up window for payment gateway - We intend to provide a button which will open a small pop-up window carrying the transaction details, and in this pop-up window the entire payment gateway process will take place taking care of redirection and everything.
Option 1 is proving to be very cumbersome and complicated as maintaining the exact state is not getting feasible.
For Option 2, we are not sure if this is safe and possible?
Has anyone implemented such an approach earlier. Otherwise, what are the other options which we can go for?
Thanks for any help in advance.
I faced the problem and I implemented it using websocket/polling in the main application while a new window pops up for the payment.
After the payment is successful the main application will be notified.
That way each payment runs in it own sandbox totally unbound from the main application which makes maintenance quite easy. Note that our backend create a new session for each payment using the existing one.
I think it is not uncommon to open new windows for payment that's why I decided to go this.
I have a Silverlight App which gets its data from a database. My Silverlight app (running in the browser) retrieves the data through a web service. Pretty standard setup.
But there is some data which has to be there all the time or the App is in an invalid state - think data to fill drop downs etc. So I need this data to be "pre-loaded" into the App before it's sent down to the client so that it's never in an invalid state. Today I load this data via a web service call when my first page is initialized which can some times take a few seconds - during that time my App is in an invalid state.
Is there a way to populate data (from a backend database) in my Silverlight App before it's sent to the browser?
It is valid for an app to start and not be ready to use for a while, so long as the user cannot interact with it (or see the broken bits:))
Better to ensure your app has a splash screen/login page etc that displays until such time as the required resources are loaded. Once loaded you can set an app state to then show the main screen.
I had the same problem with a website that loaded the menu items via a service (as the text was data driven). Wound up running a progress spinner over the top (with a full-screen background).
I don't think you can. The application runtime occurs on the client's machine. I would suggest putting up a loading dialog while you bring those items down from the database.
What HiTech Magic said. Best practice for this is to use a splash screen or login page. You can also have your buttons (and interaction) disabled by default, and after the data is loaded, enable the UI. I would go with the spash screen though..