Convert UINavigationController-based app to UIDocumentBrowser-based app - ios

I've been working on a UINavigationController-based Swift iOS app for the past few months, but I'd like to switch to a UIDocumentBrowserViewController-based app (or at least be able to implement it in my existing app). Is there a way to do this without creating a whole new project/target?

Is there a way to do this without creating a whole new project/target?
Yes. Make a new document browser based app so you can see how the project is configured, and copy its special features carefully into your existing project.

Have you tried to use UIDocumentPickerViewController? If you implement this class in the section of your existing App then it should work.

Related

How updating dynamic framework will affect App Store build

I have an app on the App Store and I have to create another app. This other app has some of the same functionalities as the first app. So I wanted to create a framework to put the common code in and use it inside the apps. Unfortunately, this framework has to change to add more features and improvements.
I saw that dynamic libraries can update the library code without any change to an app already pushed to the App Store. But this is reserved for Apple. Also, since iOS 8, we can create a dynamic framework which includes dynamic libraries. So is it possible to have the same, meaning if I update my dynamic framework, it also updates the app without having to push to the App Store again and face app review process?
If not, do you have some clues/recommendation to achieve that?
Dynamic Framework is a bit different from the understanding you have. Please read apple documents in more detail for that.
Currently only way to achieve what you expect is to push code on App Store as hidden, and based on some server API configuration update your content accordingly (Firebase Remote Config is one such good example if security is not that big a concern)

Google Map don't load in iOS

I’m using GoogleMaps pod in my iOS application and it was working fine, but in my last build, apple reject my application. And the reason behind that is, the map was unable to load at the time of review on iPad running iOS 12.2 on Wi-Fi.
I did try to reproduce that bug on my device but I couldn’t.
Application do ask for location permission
Google Place API key also seems ok.
Is there any way to identify what the actual issue is and how I am supposed to solve this one?
Finally, I've solved that issue and for that, I've done some of the changes in my project.
1 - I've patched the latest Google Plist file in the project (I wasn't sure whether the old one was latest or not)
2 - I was using multi language in my project so before setting the delegate of google map, I've set the language for my project.
3 - instead of set the google map from Storyboard, I've set the google map programmatically in my view controller after setting language.
After surfing for so long to solve this issue, I came to know that this issue occurs when your App supports multi language. These some steps did work for me.

Uploading multiple builds of same iOS Application

I want to upload two build of same app with little UI changes on app store with different account. Can I upload the builds?
I have an app with multiple client so I want to upload builds for each client with their own account. I have modified the UI for each clients.
Yes, you can. What I do in similar situations is that I use one project for that (as you already have). And then I crate a copy of a target, so that I can customise it (custom logo, custom icon, ...).
To apply customisation in code I take advantage of "Custom Build Configurations". Here on SO I've described how I do this (as of writing it's the third answer to the question) custom Build Configurations
Sure you can, just make sure that the bundle identifier is different.
No issues in doing that. Just take care of the following things which must be different:
Logo
Bundle Identifier (as suggested by Fabio)
package ids of in app purchase items, if any
App preview images/videos
If you are using iAds for showing ads in your app, make sure you do not use the same provider account.

How to pass objects/data between my iOS applications

I have an existing iOS application on the app store, and I am building a new companion app to work with this existing app.
I need to pass objects/data from this new app to my existing app when a certain action is taken. The behaviour I'm looking for is very similar to AirDrop but the data is passed to another app on the same device.
The objects I want to pass locally between apps are simply NSObject's.
As per your comment you wants to share NSObjects between your iOS apps. The best approach would be "Custom URL Schemes". But in this approach you may need to add or re write some parts in your old iOS App as well.
checkout this SO Answer for more info on implementing custom url scheme and history of sharing data between ios apps.
Apple documentation for sharing data is also available.
If your app supports greater than iOS 8 you can also use the new feature called "App Group Functionality"

Display Settings.bundle Root.plist in a view inside the app

I would like to let the user access the settings for the app both from iOS Settings app and from the app itself.
Right now I am using Settings.bundle to access the settings from the Settings app, is there an easy way to implement a controller inside the app to access the same settings?
As a side question, is there an easy way to implement a settings-like view starting from a plist?
There are a few Open Source projects to do just this. About a year ago I evaluated all the ones I could find and ended up using InAppSettingsKit. Second place was mySettings, but it looks as though that is no longer being maintained.

Resources