GooglePlus Not Supporting for IOS 4.3 - ios

I have a Application Where i am integrating GooglePlus SDK to support GooglePlus.Its working fine till IOS 5.But when we run on IOS 4.3 it crashes with following Error.
dyld: Symbol not found: _OBJC_CLASS_$_UIStoryBoard
i am not using Any storyBoard in my Application but why this error Comes??
As per googlePlus Documentation it supports From IOS 5. But i just want to Know there is any way where we can make it work for IOS 4.3 as my Application Supports from IOS 4.3.
Is it Possible To support for IOS 4.3? If Yes how can we solve this.

As you can see from the exception, class UIStoryBoard is not supported in earlier versions of iOS than 5.0.
Since Google Plus SDK uses Storyboard in some way, unknown to me personally, you cannot use this SDK with any iOS that has version less than 5.0.
Reference from Apple:
UIStoryboard: Available in iOS 5.0 and later.
P.S. It seems to me that it is too redundant for any kind of a project to support version that is 3 releases older than current - iOS 7.

Related

Does Google Sign-in SDK iOS support iOS6?

My project must support iOS6.
I use Google Sign-In SDK v2.4.0.
But When I selected Target , the GoogleSignIn.framework (optional) in Xcode project and run on the iOS6 device, dyld log tells
dyld: Symbol not found: _OBJC_CLASS_$_NSURLSessionConfiguration.
Is there how to use this in iOS6 Device??
The GoogleSignIn guides don't state a minimum SDK version however...
NSURLSessionConfiguration was introduced in iOS7 so if you are getting that issue when trying to link to the SDK then iOS 6 certainly isn't supported.
Checking out the sample project (pod try Google) and it also has the Deployment target set to iOS 7.0 so it looks like you are out of luck I am afraid. Maybe look at using an older version but I can't help you with what version supports iOS 6 and I would not know if it is still supported/maintained by Google.

Can I add iOS 7 support to an app that was released as an iOS 8 app only

I've been searching through documentation for a while and I can't really find it. My question is very simple:
If I submit an app that works on iOS 8 only, will I be able to add a iOS 7 support with an update?
Thanks!
Yes, this is possible. You need to do the following:
Go to your project target's settings "General -> Deployment Info -> Deployment Target" to iOS 7.x.
Test your application on iOS 7.x device and make sure your application is not crashing and working as expected. If there are iOS
8.x only API's used in your code, you need to switch to API's for iOS 7.x at runtime.
Note: Since you are about to add the support for iOS 7.x, avoid using the deprecated API's. This will save your life later on when these deprecated API's are gone.

Using ios 6.1 sdk with ios8

I have installed the ios 6.1 sdk in xcode 6 and it shows up in my base sdk drop-down.
I selected it and the app builds but when it launches on the ipad (ios 8) it seems to have a very broken apperence as if its trying to use ios 8 sdk. In ios 7 we were able to use the ios 6.1 sdk on ios 7, is this ability totally removed in ios 8?
This is an enterprise applicaiton, and the client is trying to avoid paying from a full refresh to ios 8.
Dropping an old SDK into a newer copy of Xcode is untested and unsupported by Apple, and it's no wonder you're seeing the problems you're seeing.
If you want to support an earlier version of iOS while using the latest SDK, just set the Minimum Deployment iOS version in your target's build settings (as described here in the Apple documentation I've included).
p.s. On the other hand, if you really want to keep using the iOS 6.1 SDK... use the Xcode version the SDK came with. And it should hopefully look proper under iOS 6, and it'll look like an iOS 6 app under iOS 7 & iOS 8.
p.p.s. Your client is cheap.

Check Base SDK at run time

I'm building a library and some of the functionality is broken when the app using it is running newer base SDK (xCode 6, Base SDK iOS 8.0).
When trying to fix the issue, the Applications built with older SDKs are broken. (xCode 5, Base SDK 7.1)
It's not related to the version on the device.
Is there a way to check in code what's the Base SDK set by the App?
You can use macros. As described by rckoenes in this question you can use macro __IPHONE_7_0 to know that you are compiling with iOS 7.0 SDK. For iOS 8.0 SDK you can use __IPHONE_8_0 macro of course. These macros are defined in Availability.h header.
Also be sure to read Apple's SDK Compatibility Guide to understand more about working with multiple SDK's.

iOS 6.1 compatibility

I have a iOS 7.0 app, I need it run perfectly on iOS 6.1. I have download the iOS 6.1 simulator, and I have the iOS 7.0 sdk as the base sdk. If I want my app to run perfectly both on iOS 7.0 and iOS 6.1 do I have to set the base sdk as 6.1? or keep iOS 7.0 as the base sdk and just run this app using iOS 6.1 simulator. I know I should the set the deployment target as iOS 6.1 so It can work on iOS 6.1. I just don't know how to set the base sdk. Can anybody explain me the base sdk and deployment target?
The base SDK defines which functionality you can use in your apps. As of today 2014-03-31, you can't submit applications that have a Base SDK set to iOS 6 anymore. You need to compile your apps with the 7.0 base SDK.
The deployment target describes the lowest iOS version your app will run on, so in your case it's 6.0.
If you're using iOS 7-only features, you'll have to implement runtime checks, largely based on -respondsToSelector:. That'll allow you to gracefully degrade on old versions.
Set the base SDK to be always the latest, be it 7.0 or 7.1. Your app is compiled using that sdk and therefore newer SDK compatibility and functions are applied to your project.
setting Min Deployment target allows compiler to check for API methods compatibility with that OS version in mind.
Hope it clears up your doubts.

Resources