When I open Xcode, it prompts me to open recent projects. In the screenshot below, the second and third projects are the same, and the first is different.
What I Want To Know:
1) What is the difference between the white and blue Xcode icons at the left?
2) Given the the second and third projects are the same, one has a white icon and the other has a blue icon. What does it mean for them both to be listed?
The white icons are Xcode workspaces (.xcworkspace) and the blue icons are Xcode projects (.xcodeproj). A workspace can refer to one or more projects.
Here are examples of three different Xcode document types from my Open Recents menu:
The white icon represents a Xcode workspace, which has an extension of .xcworkspace. The blue one is for xcode project with an extension of .xcodeproj.
An Xcode workspace can contain multiple projects.
A workspace is an Xcode document that groups projects and other documents so you can work on them together. A workspace can contain any number of Xcode projects, plus any other files you want to include. In addition to organizing all the files in each Xcode project, a workspace provides implicit and explicit relationships among the included projects and their targets.
https://developer.apple.com/library/archive/featuredarticles/XcodeConcepts/Concept-Workspace.html
What is the difference between the white and blue Xcode icons at the left?
The blue ones are project files and the white ones are workspaces. Workspaces can refer to several project files, which makes them useful for working with several different components at once. For example, you have a project that builds a framework and another that builds a test application that uses the framework. Using a workspace lets you work on both at once.
Given the the second and third projects are the same, one has a white icon and the other has a blue icon. What does it mean for them both to be listed?
It simply means that you can open any of them. Note that you can't have the same project open more than once, so if you open a project and then open a workspace that refers to that project, you won't be able to see the contents of the project in the workspace.
Related
There are 17 different sizes app icons which I've to add manually one by one in Xcode. Is there any way I can just copy and paste all icons somewhere inside project and have Xcode accept them?
Possible?
Yes, there are apps which generates app icons for all device and create .appiconset file which you can directly drag and drop in .xcassets folder in Xcode
I have one Xcode project (in Xcode 6.1) with a 4 targets for 4 different apps that share a lot of the same source code.
I'm trying to have each one of them show a different app icon.
Going into Project > General > [select target] > App Icons and Launch Images, I see this:
But clicking on each AppIcon, I get to the exact same app icons - not the ones that I would like for each project.
Is this just a bug in Xcode? How can I use different app icons for different targets?
Click on your already existing xcassets File, where you have defined the Appicons for your first target and add a new Appicon.:
You can give the new Appicon a meaningfull name (In my case Appicon-Debug):
Go to your targets and select the new target:
choose the new AppIcon under General -> "App Icons and Launch Images" -> "App Icons Source":
Clean the project and rebuild it.
Go to your app's Assets.xcassets and create a new iOS App Icon by clicking on the + button in the bottom left corner of target's section
Name it AppIcon-Test or Debug or whatever name suits you.
Go to xcassets folder and in the utilities panel allow target membership to both in the File Inspector View. Make sure the all target membership's are enabled for both AppIcon sets.
Select the target for which you want to change icon in the project settings. In "General" Scroll down to App Icons and Launch Images. Select your appicon set for the respective target in App Icons source
Happy coding :)
I had a similar issue when using multiple targets. Trying to change which asset set is used just didn't work, it would always just auto select the first one in the list. The way I solved this was to rename the AppIcon in each asset set e.g. AppIconMobile and AppIconTablet.
CLick on the Arrow at right most, which will take you to Xc-assets screen, where you can set images.
Similarly click on other target and set images. If you open your project in finder window, you can notice ProjectName.xcassets where you can see different app icons set. you can copy directly to this folder aswell
I think you just need to create Assets.xcassets for each target
Then create an AppIcon in Asset, no need to give it a different name in each asset
Select the AppIcon on the general section of each target
On top of every other suggestions, you also need to clear Build Folder (top menu Project -> Clean Build Folder), close Xcode, remove app from device / simulator, close simulator, open Xcode and run it again. Otherwise, Xcode will keep cache of your old App Icon.
I have having quite a bit of trouble updating my app to IOS 7. Everything is ready, but I have several warning icons around the Icon section. 'No image with correct dimensions found'.
It says I need to provide a 120x120 icons and a few others. I have the icons ready to go, but when I try and select them in xcode, it cannot even find them? I have tried putting them in the same folders as all the other icons with no luck.
I have checked the paths and everything seems fine, and following the naming conventions.
I see several answers that say to use the 'Asset Catalog' but would prefer not to do this if possible.
Add the icons to your project (drag onto the left panel).
Then, the part you may not want: look for Images.xcassets (if it's a new project, it comes in your main project folder).
Drag the image from your project (you can't drag directly from finder for some reason) to the correct icon description.
Is there any reason you don't want to use the Asset Catalogue? It will take care of everything else automatically for you. Just follow the 'size' attribute for each empty icon box and you're done.
On non-required images, just drag one to the left box of the asset catalogue and this will create an entry for all sizes of that image.
For more information on assets/images, watch the Paul Hegarty lectures (Stanford). The newest series CS193p 2013-2014 "Developing iOS7 Apps" has a great introduction to the new features if you watch the "xCode 5" lecture.
Is there any tool available to find the difference between two versions of same xcode project?. So that I can easily get an overview of the changed/newly-added/deleted files.
Thanks,
durai.
The Xcode tools include the FileMerge.app application that does exactly what you're looking for.
It's at <Developer Tools>/Applications/Utilities/FileMerge.app.
You can compare two Xcode project using FileMerge tool available with Xcode.
Below are steps for comparison in Xcode 6.1
Right click on Xcode icon -> Select 'Open Developer Tool' -> Select 'FileMerge' option
This will open window as show below :
Select two Xcode project which is to be compared by clicking Left and Right button
Click on 'Compare' button. This will create list of file that are added, removed or altered
by comparing two Xcode project.
Note : While selecting file for Left/Right go to folder level not Xcode file or workspace
You can check changes in Left/Right, identical between Left/Right or Added/Deleted by selecting feature present in extreme right side of window (if using Xcode 8.2.1)
I'm trying to set up a second target in my project, but when I drag the Default*.png files over to the Launch Images section of the target it tells me its going to overwrite the Default.png from my original target.
How do we add different launch images for different targets?
Before you answer, please understand I'm not looking for how to include different general files or images in different targets. I understand that, I'm specifically dealing with a problem regarding the Default.png launch images when I drag them onto the target pane's Launch Images section.
In your info.plist for each project, you create a entry for UILaunchImageFile pointing to the launch image.