memory for iOS push notification - ios

I have a vps with a 512M memory, and I want to use it as a push notification server for my iOS app, at the time I push messages to 2,000 users(2,000 device tokens),the vps would down since using too much memories.
Now I have 30,0000 users, is there any way to push messages to all these users?
or what size of memory I should prepare for 30,000 users?

Related

Is ios blocking local notifications considered as harmful?

I have an app made with phonegap which is using a third-party plugin for displaying local notifications. (https://github.com/katzer/cordova-plugin-local-notifications)
I deployed it on my device, and in the beginning it worked well. However after the app sent dozens of notifications (very frequently and with same text) at some point my iphone started not showing the notifications. I tried to delete the app, and deploy again, then the confirmation dialog popped up again for allowing notifications from the app, but they still didn't show up.
When i deployed it on an other device, it worked well again, also in the emulator.
Is it possible that ios somehow blocked notifications from this app, because it considered them as harmful/spam?
Maximum number of scheduled notification is 64. If you are reached the maximum you can't add more local notifications without removing the old ones or after firing the scheduled notifications.
In the apple documents, it mentions as follows
Each app on a device is limited to 64 scheduled local notifications.
The system discards scheduled notifications in excess of this limit,
keeping only the 64 notifications that will fire the soonest.
Recurring notifications are treated as a single notification.
There is a limit of 64 scheduled notifications per app, so, if you schedule more - only first 64 will arive.
Each app on a device is limited to 64 scheduled local notifications. The system discards scheduled notifications in excess of this limit, keeping only the 64 notifications that will fire the soonest. Recurring notifications are treated as a single notification.
However, there is a way to be sure that all 64 are scheduled - just pass them in packs by 64 notifications each.
Check this answer for more info.

Does iOS have a budget for remote push notifications?

Does anyone know if iOS has a budget for remote push notifications?
That is, if an app or device receives too many remote push notifications in a day, is the app or device "cut off" or limited in some way for the remainder of the day?
I know that the Apple Watch has a budget for complication updates. I also know that there is a budget for the number of background refreshes an iOS app can request during a day. This varies depending on the iOS's determination of that app's usage patterns, being a "good citizen", battery life, etc.
If there is a budget for remote push notifications, is it at the app level, or device level? Is there any way to know when it has been exhausted?
The reason for the inquiry is that I'm considering forcing regular background activity in an app via remote push notifications. Not ideal, but more reliable than background refresh intervals.
Thanks for any help / insight you can provide.
If you are sending multiple notifications to the same device within a short period of time, the push service will send only the last one. For that reason, I do not recommend to use the push notification to trigger the method or background activity.
Apple Push Notification Service (APNS) does not warranty that push notifications are arrived all the time, it is risky!

iOS Enterprise App with direct Socket / Push Messaging (AWS SNS?) in Background Mode

We're building an iOS Enterprise Distribution App (no App Store approval required) that will receive regular data updates from a server which are then relayed to a paired BLE device.
We started off using APNS with Silent Push Messages (using the content-available flag) but found that over periods of extended use iOS started throttling our app and not waking it to process the push messages when in the background.
When the app was in the foreground or plugged into mains power it was fine.
So we're looking at the Enterprise Distribution Path at the moment (its for a controlled environment)
The question is, does anybody have any suggestions on how we can keep this app Open/Running in the background to receive a stream of data?
I've seen plenty of articles about people using a Sound File on loop, or imitating a VOIP app to do this but they don't seem ideal due to impact on battery life and user experience (with the glowing VOIP status bar).
We've been using AWS SNS for the push messaging which is really good. From what i've read SNS also has a direct connection option that bypasses APNS which is exactly what we are after but can this still work when the App is in the background?
Are there any other ways via Enterprise Distribution that we can use to keep the app processing in the background?
Thanks in advance

How do Evernote get over the iOS app limitation of only being able to handle 64 push notifications at a time?

How do Evernote get around the iOS limitation of having only 64 push notifications, as users are still able set up an infinite amount of reminders in the Evernote app, whilst still all being local notifications and thus not pushed from their own server.

Push Notification : what is the condition to be count as a "spamming"

I'm implementing server-to-client communication in my iOS Application. What I'm trying to do is to deliver new messages from server to client such as
Old version will be no longer support soon, please update asap.
There is a new content available.
Reminder of some interesting content.
etc.
When device got message, it will notify user by showing "You got new X messages" with badge number. After user launch the app by clicking at the notification message, it will show those message containing images and text within my application.
At the beginning, I did this by iOS 7 background data fetch because the message content size that I mentioned will contains image url and text, it may exceed the maximum size of push notification content length. After testing with that approach, I found that there is no guarantee of when the application will be wake to connect and fetch new message from my server. (I left the device overnight to see how many time it connect to my server, first night was 5 times, second night was once)
Since some of the message is time sensitive (like reminder), I came up with the another approach by sending a Push Notification to the device when there is any new message to signal the app instead. But, according to App Store Review Guideline
5. Push Notifications
5.6 Apps cannot use Push Notifications to send advertising,
promotions, or direct marketing of any kind
5.8 Apps that excessively use the network capacity or bandwidth
of the APN service or unduly burden a device with Push Notifications
will be rejected
So, my questions are,
If I send a message contains promotions or marketing material but it won't showing at the iOS Device home screen, instead, user has to launch my application to see those contents, will it be the case of 5.6?
From 5.8, "excessively use the network capacity or bandwidth", do you know how many notifications can be sent to how many devices per time period? If I send 2 notifications to thousands of devices every hour, will that be the case?
Thank you, in advance.
5.6 wont be a problem, because i developed few which is working as like your scenario and they are live in app store.
5.8 also wont be problem i think, because i saw few application using push notification for voice call and video call application for intimate new call arrival for the user.
Some chatting application also using APN for intimation the user when
new message arrived for that user.

Resources