Best option for storing external database for iOS app - ios

I am working on an app that will access an external database that needs to be able to load quickly. This is our own database, and the issue is where to store it for the fastest loading time. Currently, the database resides on a wpengine website, but it loads very slowly. One option is uploading a .plist file sporadically to the user's app when new data is available; it seems like that might not be very secure - although it would probably make accessing the data lightning fast. I was thinking that possibly CloudKit shared storage would be the best place to store the data if I wanted to keep it fast and also keep users from viewing it directly. I would appreciate any thoughts or suggestions.

As far as I understand, CloudKit will be OK for you. You can have a look at NSHipster's excellent summary here.
You also have a link to a tutorial in the comments above. If you want to discuss it further, don't hesitate to contact me through chat.

Related

how to create a flutter app like wikipedia

I'm trying to create a Flutter app like wikipedia where a user can search and display the information but I'm don't have a lot of backend knowledge so it'll be appreciated if someone can guide me what I should do or learn in order to start this project.
The reason I'm trying to build this app is for my ethnic group. I want to have an app where we can read articles/information in our own language.
My goals is basically get all the article or documents about our cultures from other people and store in one database and display it in my app.
I'm not really sure where will be the best place to store all the article and retrieve that in Flutter. I've been looking Firebase but I'm not really sure if I can store the whole articles and display it.
Just to give you an idea, this is minipedia app and I'm thinking about creating an app just like this.
Any suggestion will be really helpful. thanks
You can use Firebase Firestore for this project. I've used FB before and to the best of my knowledge, there shouldn't be any problem with doing what you mentioned above.
I've been looking Firebase but I'm not really sure if I can store the whole articles and display it.
Yes, you can store whole articles on Firestore and retrieve them whenever you need them. Each document has a maximum limit of 1MB, which is approximately 1 million characters but should you need more space(which I highly doubt), you can always separate your articles into chunks.

Sharing a Realm Database between a user's devices

Is there a formal way for a Realm Database to be shared between a users iPhone and iPad? Clearly that will need some kind of server that a database can be pushed and pulled from. Is there a solution for this, like is there a way to use iCloud?
If not does anyone one have any ideas for a path of least resistance for implementing this myself?
Found this chat on the Realm's GitHub page
https://github.com/realm/realm-cocoa/issues/913
I am still hoping someone here has got around this issue?
Realm hasn't provided sync feature yet. We are actively working on sync building feature, but we don't have no ETA at the moment.
Easy ways are sharing Realm data file with iCloud or other services. e.g. DropBox API.
https://www.dropbox.com/developers
Or this library might help you...? https://github.com/BellAppLab/RealmCloudKit
Second, using serverside database to sync with local database. Like Parse.com.
https://parse.com/

Database for Real Time Queries/Push Notifications

I am looking to build an iOS app and website that work 'together'.
What the plan is for each:
On the iOS side, it will be pushing information to the server in the form of a post. The users will then be able to vote up and down on the posts as well; which also implies they will be able to see the other users information (in real time).
The website will be viewing this information in real time and using the posts. If a post gets enough down votes the server should tell the website and apps to remove it.
I have experience with SQL. Although SQL does not seem to be the appropriate server choice - for what I want to do - given my experience with it. (I could definitely be wrong.)
I would like to host the information myself, however have heard that Parse is good about holding information for iOS apps. I just don't know whether it gives you enough freedom to work with websites as well.
TL;DR: What kind of database/datastore should I use for a real time queries that allows for push notifications?
All suggestions are welcome. Thank you.
Try Using FireBase
firebase.google.com
Documentation

Alternatives to storing data to database rather then using Parse

I have been using Parse lately for applications I develop, mainly due to the simplicity of getting an app off the ground. This could eventually be costly, more so unless I store to my own database on a rented server, I'd assume. So my question is: How would I go about storing data externally to my own server? Is there any sort of framework like parse for this with option to use one's own server storage instead? I'd assume theres something considering writing a whole login system etc that's secure multiple times would seem a bit repetitive, hence Parse. Thanks in advance!
Google has provided a mobile backend starter some time ago, here is the link https://developers.google.com/cloud/samples/mbs/. Hope it will help!
Yes you have. Kindly look into DynamoDB from amazon.
Here is a good documentation for iOS SDK.
More granular detail is here
I hope that helps.
You may need to have an account with amazon aws in order to create your appID & all.

iOS app without API, alternatives?

Im thinking about learn to develop app for iOS. I had a lot of ideas, but most of them i would need the API of that website. For example: http://www.filmaffinity.com/en/main.html
The point is: is there any other possibility of collect/use information of a site without the API, anything else without the typical parsing or scraping?
Thanks you
To get the most up to date information to your users, you would need to use the API. If you want to store the data locally, you could do some initial scraping and build up your own database and distribute it within your app. This approach is not ideal because your data may become out of date quickly (unless you have a database update mechanism) and the owners of the sites you are scraping may not take too kindly on the matter

Resources