The os version installed on apple watch does not support the watchkit app prodct - apple-watch

I am using Xcode 7. My apple watch app works fine in the simulator. It also can be successfully built on device. However, the app seems not to be installed neither on iPhone 5 or apple watch (1.0).
The iPhone and watch pair is ineligible. And it states "The OS version installed on apple watch does not support watchkit app product. I tried everything in SwampThingTom's Question, but I still change the status of the phone-watch pair. The app on phone without watch works well. The problem only comes when watch is included to test app on watch. Does it mean something is wrong with apple watch?
I am new in app developing. Can anyone help me? I appreciate any help.

Since you marked your question with watch-os-2, it is possible that this is correct and you develop against watch OS 2.
If this is the case: you can't run a watch OS 2 app on watch OS 1.
I see to ways to tolve this:
You could set your development target to iOS 8.x and Watch OS 2.
Or you could wait a few weeks until you can install the new OS version on your devices. Since developing for watch OS 2 is much more fun I'd suggest the latter.

Related

Installing Apple Watch OS 2 App on Apple watch without iOS device

I have created a demo standalone app for Apple Watch OS 2 and It works fine in the simulator. I know the steps to install watch os 1 apps via your device but in my case I don't see Apple watch device in Xcode to run my app.
Below is the error I am seeing when I try to run it on the paired iPhone
https://www.dropbox.com/s/c4qx3gdbep15s61/Screenshot%202015-08-20%2013.19.33.png?dl=0
There are many tutorials on building apps for Watch OS 2 but I couldnt find any info on installing it directly on watch. Am I missing something here?
You’ll build watch apps for watchOS 2 as extensions, just as you might build a share extension. These are dependent apps—the Apple Watch can’t install them without a paired iPhone.
That may sound weird but below are the three main parts of apple watch
iOS app: This is the "host" application that runs on an iPhone or iPad. You can never run an app on the Apple Watch without a host app.
Watch app: This is the bundle of files and resources that is included with the host app but then installed on the Apple Watch. The bundle includes the app’s storyboard and any images or localization files used in the storyboard.
Watch extension: The last piece of the puzzle is the actual code that you write. This gets compiled and transferred to the Watch for execution. Any images or localizations accessed in code should be bundled with the extension.

Can I build a stand alone Apple Watch app?

In WWDC 2015 it is mentioned that watch supports native apps but I fail to see the option in new Xcode 7 for the way to just build an apple watch app without the companion app. Please let me know the way to do so, if it exists.
In fact, watchOS apps are linked to the iOS companion app.
In both versions, each watchOS app has two targets: WatchKit App - which contains storyboard, icons, etc - and WatchKit Extension, which contains the code.
In watchOS 1 (old WatchKit) + iOS 8 combination, WatchKit App is installed on Apple Watch, and both WatchKit Extension and iOS app are installed on user's iPhone.
In other way, in watchOS 2 + iOS 9 combination, both WatchKit App and WatchKit Extension are installed on user's Apple Watch, and iOS App is the only code and view installed on iPhone.
Running iOS app only requires one target, so it can run without Apple Watch (since the first iPhone OS).
But running watchOS apps needs both WatchKit App and WatchKit Extension. In watchOS 1 (the old WatchKit) because one is on iPhone and other on Apple Watch, so running apps need connecting between them with Bluetooth, so you have to carry your iPhone nearby. In watchOS 2, both are on Apple Watch, so running apps does not need connecting to iPhone and having iPhone nearby. You can connect them with WatchConnectivity framework included in watchOS 2 SDK (in Xcode 7).
So in watchOS 2 apps can run standalone, but they are not standalone at all. They install on Apple Watch when installing on iPhone, and they can connect with each other. When you create a new watchOS App, you must include it with your iPhone app when submitting it to the iTunes Connect.
NOTE: This makes watchOS apps faster and more reliable.
You can't build native watch apps yet. Maybe in a later build of Xcode 7, but so far all Apple has announced is that "at some point in the near future" you will be able to build a native Watch app.
In watchOS 2, watch apps are "native" in the sense that the WatchKit extension now runs on the Apple Watch instead of the user's iPhone. This means it can no longer share data with the iPhone app using shared app groups but must instead use the new Watch Connectivity framework to pass data back and forth. It also means that watch apps can be much faster and much more capable without the phone being present.
However, a watch app must still be bundled with a companion iOS app, at least for this year.
In iOS 13 it's possible to create independent watchOS application. More information can be found here. You have to download Xcode 11 to be able to create independent watchOS application.
To create it simply go to File -> New -> Project and select watchOS -> App as it's shown on a screenshot:

Xcode 4.3.2 - Base SDK for Distribution of App

I am trying to distribute an iPhone App to the App Store for the first time. Currently, I am following this guide: Submitting iPhone Apps To The Apple App Store – A Step by Step Guide. Currently, I am on the step where I have to set the Base SDK field value. See, the screenshot.
As you can see, iOS 5.1 is the only choice available there. Now, if I set it as Latest iOS(iOS 5.1) - the default value - will the distributed app will be able to run on older OS's, for example iOS 3 or iOS 4? If not, then what will I do to make it run on older OS. Or, is there anything I misunderstood about BaseSDK?
No worry it will function in the older os you need to keep the deployment target minimum SDK which you can find in the picture if you updated the xcode with simulators of IOS 4 and 5 you can get these options
Update
Basically it means that you're going to be able to use all the API that is public in 5.1 SDK. This has nothing to do with "Which phone your app can run on".
iOS deployment target on the other hand, is asking you which devices can this app run. This is quite a dangerous question, since you can then say from iOS 3.0 to 5.1 for example. This means that your app can be installed in any iPhones running iOS 3.0 to 5.1, no matter what the phone is. That means the original iPhone and iPhone 3G can run your app if they have at least iOS 3.0 installed. You should test your app carefully if you decide to do this. Apple does not provide any way to test on older OS. You'd have to devise that strategy yourself.

ios app build for version 5.0.1uploaded to app store can be run on ios 5.1?

I did build app for ios 5.0.1 using xcode 4.2 and uploaded it on apple store. They rejected my app due to crash issue occurs when they install and run on ios 5.1.
Could you please let me know if we build an app for ios 5.0.1 will not be run on ios5.1 iphone device.
What will be the way so I can approved my app at apple store that is build for ios 5.0.1.
But two days ago they approved another app that is build for ios 5.0.1.
Should I query to apple store.
Please reply me thank a lot for time frame given to my ques.
The app can run in iOS 5.1, the thing is that you dont know how that app is going to work on 5.1, so probably you are using something that is allowed in 5.0.1, and in 5.1 is crashing.
Your only option now, is to download the 5.1 on your xCode and check what is going on.
Yes, Apple will approve apps that are built using the 5.0 SDK, though probably not anything earlier. They pretty much always test using the latest version of the OS so you should absolutely test with it before submitting. I'd venture that there's no reason not to develop with the latest too.
The changes between 5.0 and 5.1 are not huge so, chances are, you do have a bug. Apple normally send crash reports when they reject for these reasons.

Build an iOS4 app that will also deploy on iPhone OS 3.x devices

I've got a couple of applications in the App Store at the moment which I've had ready after the release of iOS4. If I try and download one of these in the App store on a 3.x device, it will tell me I need to upgrade. Is there a way to make my application not do this, as I don't think I am using any API calls specific to iOS4.
I originally thought that this could not be done but I just now installed 'Plants vs Zombies' and 'Angry Birds' on my iPod Touch (running 3.1.3) so it must be possible as I'm sure these have released updates recently, and being in the top5 games, I would have thought they were developed using the iOS4 SDK. I am hoping it is just one value somewhere but if anyone could let me know how to do it that would be awesome :).
Easy. Open up your project info.
Find this line "iPhone OS Deployment Target" select 3.0
You can still develop with the latest xcode and current 4.0 SDK, but if you dont make any 4.0 calls this should allow you to weak link to 3.0+ and allow apps to work.
You really should test this on a 3.0+ device to see if it works though. You can still set your Base SDK to 3.2 or 4.0.