I'm a beginner in iOS. I'm making an app that works both offline and online. On the default Settings app on iOS, my app has only access to Notifications and background App Refresh. How do I add the option to allow users to use mobile data?
Thanks!
It's enabled by default - you don't have to do anything. The option will appear in the Settings page the first time you use mobile data with your app.
When starting a basic project on Xcode your application by default is routed to work with cellular data. There is no need for any kind of external settings manipulation. If you really feel like configuring the overalls and the connection structures feel free to explore the " Networks " tab to better optimise your app.
And good luck with your new project !
I just build an app in Xcode 14 and mobile data was off by default!
Related
I have a Qlikview dashboard that I need to present and I've created a site that loads the Qlikview server onto the browser and runs it from there.
I now need to create an iOS app that does this. But the requirement is that the dashboard shouldn't open on the browser. The server should be loaded and run from the app itself. Is there any way to do this?
PS, I'm completely new to iOS App development and any help will be appreciated.
Yes. While saving it as a shortcut and opening it in the browser would be simple, using Apache Cordova is the best way to develop a smartphone app with HTML5/CSS/JavaScript. From the website:
When using the Cordova APIs, an app can be built without any native
code (Java, Objective-C, etc) from the app developer. Instead, web
technologies are used, and they are hosted in the app itself locally
(generally not on a remote http server).
And to make things better, it's open source.
I recently found a site that allowed me to bookmark the site and then use it just like an app. There was no url bar, it was indistinguishable from an app you would download on App Store. Is this a new upgrade or technology ?
This is not new technology, I don't remember how long it's been out, but I'm pretty sure at least since iOS 3. It's called a webclip. You can do quite a bit with a webclip but are still limited to functionality provided by JavaScript, so no accessing the flashlight and certain hardware features (although many are being included in the device JS object). Though it is certainly much easier to implement basic app functionality!
+1 to SnoApps and here's a bit more detail about this older detail.
You can specify a webpage to appear like a regular app icon on the iPhone "home" screen (where all the apps appear).
There's more information here under the "Configuring Web Application" section of this Apple Safari Web Content Guide.
I have run into several problems with iOS development through phonegap recently, and unusually people around here have been unable to discuss these issues and even together we have (for the first time I have ever seen) not had a single comment or answer for these topics...
See https://stackoverflow.com/questions/14707936/make-a-page-that-redirects-back-to-ios-phonegap-app and iOS broswer data -> Cache & Cookie for Phonegap App / Session?...
However, I have found "solutions" to get around these, but its by no means answers to the issues in question which are still outstanding... just simply doing it a completely different way.
However, despite loosing web-view in phonegap, in an attempt to get around https://stackoverflow.com/questions/14707936/make-a-page-that-redirects-back-to-ios-phonegap-app I now have some issue that are outstanding...
I need to be able to navigate back to my App from the web-system !!!
However, I have no idea how. I have read info on creating URL Schema, but I am not sure if this is even possible through build.phonegap at all... and it seems faily complicated. Does anybody know of a way for iOS safari to do one of two things
Either
Open the app that is running in the background
or
close the current browser tab and navigate back to the app in the background.
The closing tab idea would be good, but not essential
Look forward to everyone thoughts and opinions on this one...
Henry
You can create an url scheme for any application you make yourself.
See tutorial here
It's not as terribly complicated as one would think, and the required objective-c code is minimal.
Once you have done this, you can use your own url scheme to launch your phonegap application from safari with a hyperlink.
This would not close the tab (you could do this with javascript if you wanted to)
but does put safari in the background, and opens your phonegap app.
(whether it is already running in the background or not)
It is even possible to pass data to the app using your url scheme.
It is not currently possible using PhoneGap Build in 2.2 and previous. Potentially a feature top be released in newer versions of Cordova/Phonegap
I read that PhoneGap is approved by Apple as a framework for building native apps, but I'm not clear on how this does not constitute a "website wrapped as an app," something that Apple specifically doesn't like, as per their App Store guidelines. I'm assuming it is because the JS is contained in the application, rather than running on a remote server?
Any clarification on this issue would be most appreciated.
but I'm not clear on how this does not constitute a "website wrapped
as an app," something that Apple specifically doesn't like, as per
their App Store guidelines.
By this Apple means Apps that simply show a UIWebView that loads a remote website, so it basically just behaves like Mobile Safari, just without the controls. Also they wan't Apps to show at least a UI when the device is not connected to the internet, like in the Facebook App where you can still read already downloaded status updates, view photos etc. That's what a "I just wrap a remote website inside a UIWebView"-App can't do.
PhoneGap Apps have all the resources they need (HTML, CSS, JavaScript) on the device residing in the App's bundle, so using such an App would not depend on network availability and could at least show a UI that tells you to connect to the Internet in order to use the App, or they could display already loaded content (like Facebook, Twitter and so on).
I think that the signature of the binary tells Apple what framework built the application, and since all the supporting files (js included) are included in the project and therefore in the binary, it is a standalone application. That being said, I still think that doing things Natively is the best way to go. I am extremely comfortable with javascript and started out thinking Phonegap was the way to go for me. I did a couple of projects with it and then decided to take the plunge and learn Objective-C. That worked out so much better for me. No dependency on a third party framework and I wish that I had started that way.
Sometimes the easy way out just hurts ya in the end IMO.
Is it possible to share on-disk data between iOS applications, or are they truly sandboxed? In other words if I wanted to make a shared repository of data to be accessed (and/or modified) by one or more of my apps, could it be done?
One of the listings on the iOS features page is "Share Data Among Apps", but is this what I'm looking for, and what are the related APIs?
Googling hasn't turned up much else in this area and I know I can construct a path to just about anywhere in the iDevice directory structure. Would it be against Apple's TOA, leading my apps directly to rejection, or is there hope for such an architecture?
Nothing too easy unless your app is iPad only. Otherwise this thing speaks about URL Prefixing. See "Implementing Custom URL Schemes" http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/StandardBehaviors/StandardBehaviors.html%23//apple_ref/doc/uid/TP40007072-CH4-SW7.
Here is some info on the iPad only Doc support: http://developer.apple.com/library/ios/#documentation/General/Conceptual/iPadProgrammingGuide/CoreApplication/CoreApplication.html%23//apple_ref/doc/uid/TP40009370-CH6-SW2 see "Document Support on iPad Devices". This DOES NOT work on iPhone/iPod
That looks like marketing speak. The only way to share data locally is to pass it in the URL when launching another app. Otherwise, you need an internet server based solution.
Another thought: can you use TCP locally between apps with the new multitasking support? Apps like Air Sharing are allowed to create listening sockets.
using ios keyChain you can share data between apps.