In "Create asset catalogs and sets" - https://help.apple.com/xcode/mac/current/#/dev10510b1f7 - I read this:
" Create an iOS or tvOS launch screen image set: Choose App Icons & Launch Images > New [OS] Launch Image from the Add button (+) or from the Editor > Add Assets menu. For an iOS app, you can also change the default launch screen source to an image set. "
But neither the Editor -> Add New Asset menu nor the Add button (+) menu contains an "App Icons & Launch Images" item. I can add that I use Xcode 16.1.
So again, the Xcode documentation is quite misleading and confusing!
My (real) question is if it is possible to give Xcode ONE launch image from which Xcode creates all necessary image sizes automatically? Or do we still need the apps and services that creates a bunch of launch images from ONE image?
Post
Replies
Boosts
Views
Activity
In several places on https://developer.apple.com/documentation/xcode/configuring-your-app-icon I read:
"In the Project navigator, select an asset catalog."
But my Project Navigator does NOT contain any "asset catalog". So it's impossible to follow the instructions of the documentation, and thus specify a new app icon (set).
I can add that I use Xcode 16.1 on MacOS 15.0.1 Sequoia.
I have added a screen shot to document what I am saying.
I have also reported this error in https://feedbackassistant.apple.com/feedback/15738182
Hi!
I am trying to test an app developed in Xcode 16.1 on an iPhone 7 running iOS 15.8.3. My MacOS is 15.0.1 (Sequoia). But I am getting "iPhone is busy" no matter what I do. And yes - Finder can see the iPhone 7 and show information about it.
I have followed a lot of advice that is supposed to solve this, for instance here: https://forums.developer.apple.com/forums/thread/692230
And here:
https://stackoverflow.com/questions/46316373/fixing-xcode-9-issue-iphone-is-busy-preparing-debugger-support-for-iphone/48238062
But nothing works. Actually it's getting worse...
At one point it said "100% complete", although it was still "busy". But now I don't even get to the "100% complete" message... (After 30 minutes.)
So my conclusion is that it's impossible to use an iPhone 7 running iOS 15.8.3 to test an app developed in Xcode 16.1 on MacOS 15.0.1.
Am I right? In that case: Which iPhone models and iOS versions can be used instead?
I just did a fresh install of MacOS Sequoia 15.0.1, then I installed Xcode 16.
Then, in Terminal, I did: xcode-select --install
Which created a pop-up window from which I installed the Command Line tools.
Later that day I used the command "brew doctor", and got this warning:
Warning: Your Command Line Tools are too outdated.
Update them from Software Update in System Settings.
If that doesn't show you any updates, run:
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install
Alternatively, manually download them from:
https://developer.apple.com/download/all/.
You should download the Command Line Tools for Xcode 16.0.
And yes, System Settings -> Software Update showed that Command Line Tools needed to updated.
I find this to be very strange behavior of MacOS Sequoia 15.0.1...
Hi!
Here comes another question related to the KMLViewer MapKit example:
My KML file contains 11 annotations in the form of MKPointAnnotation.
Each of them contain a text, which can be found in '_title', in the Xcode debugger. But it is not displayed on the map (MKMapView).
Can any one help me figure out why?
Thank you!
The KMLViewer can be found here:
https://github.com/ooper-shlab/KMLViewer-Swift
It can be imported directly in Xcode.
My question yesterday - https://developer.apple.com/forums/thread/680107 - was probably to complex for anyone to want to try to answer, I am sorry!
So now I will break it up, and start with a smaller question:
I am trying to show 10 simple lines on a map with Map Kit. The lines have been loaded into a list called 'overlays' by a module called KMLviewer, or more exactly KMLparser, inside KMLviewer - from https://github.com/ooper-shlab/KMLViewer-Swift .
As you can see from my debugging log below, 'overlays' is a list of elements of the type 'MKOverlay', although in reality they are all MKPolyline(s). So how do I access the 2 geographic points that make up each line?
MKPolyline inherits from MKMultiPoint, which has a function:
func points() - UnsafeMutablePointerMKMapPoint
"Returns an array of map points associated with the shape. "
But as you can see from my debugging below, I can't seem to access that function, now that the MKPolyline is "inside" an MKOverlay. So how do I access the points?:
(lldb) po overlays
▿ 10 elements
- 0 : MKPolyline: 0x60000368bc60
- 1 : MKPolyline: 0x60000368bcd0
- 2 : MKPolyline: 0x60000368bd40
- 3 : MKPolyline: 0x60000368bdb0
- 4 : MKPolyline: 0x60000368be20
- 5 : MKPolyline: 0x60000368be90
- 6 : MKPolyline: 0x60000368bf00
- 7 : MKPolyline: 0x60000368bf70
- 8 : MKPolyline: 0x600003690000
- 9 : MKPolyline: 0x600003690070
(lldb) po overlays[0]
MKPolyline: 0x60000368bc60
(lldb) po overlays[0].coordinate
▿ CLLocationCoordinate2D
- latitude : 64.47726683920816
- longitude : -21.420572185955933
(lldb) po overlays[0].points()
error: EXPR:3:13: error: value of type 'MKOverlay' has no member 'points'
overlays[0].points()
~~~ ^~
(lldb)
Hi!
Years ago Apple created an MKMapView demo called KMLViewer. It includes a KMLParser that reads a KML file and converts the data to Map Kit classes.
Originally it was in Obj. C, but someone translated it to Swift, and put it here:
https://github.com/ooper-shlab/KMLViewer-Swift
I imported it directly into Xcode and made it read a KML file I have created.
It correctly finds 10 overlays in the form of MKPolyline and 11 annotations in the form of MKPointAnnotation, but they are not shown/displayed correctly.
The biggest problem is that the lines are totally missing. And when I look at the overlays I can't seem to find the 2 geographic points/positions/locations that describes each line.
I am not sure how to make Xcode print out the content of the MKPolyline(s) instances in a way I can include here as text, and it seems you can't attach a screenshot here either, but I have managed to put the screenshot here: transformation.dk/deling/screenshot-overlays-MKPolyline-2021-05-13.png
So you can see the content as I found it. It seems to correctly indicate that the MKPolyline consists of 2 geographic points, but I haven't been able to find the points themselves...
On the annotations I was able to find the point, in the Xcode debugger, in this way:
(lldb) po annotations[0].coordinate
I hope someone can help me understand what is going on, and how to find the relevant debugging/tracking information in Xcode.
I am a bit surprised that I had to specifically write ".coordinate" in "po annotations[0].coordinate" in order to find the geographic point of the annotation!
I am aware that the problem might also be the MKPolylineRenderer class or the mapView:rendererForOverlay: method, so I have included the references to those in KMLviewer below:
swift
override func createOverlayPathRenderer(_ shape: MKShape) - MKOverlayPathRenderer? {
let polyLine = MKPolylineRenderer(polyline: shape as! MKPolyline)
return polyLine
}
(EDIT: PS: The following code was display incorrectly in the preview...:)
swift
func rendererForOverlay(_ overlay: MKOverlay) - MKOverlayRenderer? {
// Find the KMLPlacemark object that owns this overlay and get
// the view from it.
for placemark in _placemarks {
if placemark.overlay === overlay {
return placemark.overlayPathRenderer
}
}
return nil
}
Hi
I am an absolute beginner in Swift.
A friend helped me setup a test app that displays a map using Map Kit. This is the part that creates the actually map:
class KMLViewerViewController: UIViewController, MKMapViewDelegate {
let map = MKMapView()
// etc. ...
}
I tried to set mapType to hybridFlyover in different ways, like this for instance: let map = MKMapView(.mapType = .hybridFlyover )
But everything returns an error...
Can any one help me, please?
Where can I find an explanation of swift syntax?
After filling all fields on the "Test Information" page and saving, I still get the yellow warning: "Complete test information is required to submit a build for external testing." Why?
Hi!
In App Store Connect - here - https://appstoreconnect.apple.com/apps/1563922454/appstore/ios/version/inflight - I am supposed to drag previews and screenshots in, in the form of image files I presume. But that is not possible. At least not here in Firefox 87.0 (64-bit), when dragging from Finder.
And when I press "Save" even the following text disappears:
" Drag up to 3 app previews and 10 screenshots here.
We’ll use these for all iPhone display sizes and localizations you select. "
So how am I supposed to enter the image files?
EDIT: After updating and restarting Firefox, now ver. 88.0, it suddenly works!
Following a 2 years old video about Xcode, I created app icons and launch images using fanstudio.co.uk/appicon. I then copied the app icons into this folder:
my project / Resources / Images.xcassets / AppIcon-1
And the launch images into this folder:
my project / Resources / Images.xcassets / LaunchImage
Then I was able to choose the app icons in Xcode: Project Navigator - Targets - General - App Icons Source.
But I can't choose the launch images. There is nothing to choose from under "Launch Screen File:", and the "Launch Images Source:" option (shown in the video) is not there.
So how do I get my launch images into my Xcode project?
PS: Apple does not allow me to write the URL for the youtube video here, but it's called "iOS App in Python with Kivy - Part 15: App Icon and Launch Screen"...
Hi!
My Python-Kivy app works on iOS now! Both on the Xcode iPhone 7 simulator AND on a physical iPhone 7.
But when I deploy it on the physical iPhone 7 I get 85 annoying warnings of this form:
ld: warning: building for iOS, but linking in .tbd file (filename.tbd) built for iOS Simulator
What can I do about that?
Thank you.
Henrik
Hi!
I tested my app on an iPhone 8 simulator in Xcode without problems, but when I tried to run it on a physical iPhone 5s I get an error saying that I can't write a file. Why? Where do I change that?:
PermissionError: [Errno 1] Operation not permitted: 'geo-esp-train.cfg'
2021-02-28 23:09:59.085006+0100 geo-esp-training[457:91293] Application quit abnormally!
2021-02-28 23:09:59.294003+0100 geo-esp-training[457:91293] Leaving
Hi!
I am new to Xcode and iOS apps, but I managed to build and test my app in the iPhone 8 simulator.
I am using my Apple ID as 'developer team'. And I have approved that on my iPhone.
When I deploy my app on my iPhone 5s (running iOS 12.5.1) it builds without problems, but when I try to run it by pressing the icon, the debug log shows this error:
Got dlopen error on Foundation: dlopen(/System/Library/Frameworks/Foundation.framework/Versions/Current/Foundation, 1): image not found
Got fallback dlopen error on Foundation: dlopen(/Groups/System/Library/Frameworks/Foundation.framework/Versions/Current/Foundation, 1): image not found
2021-02-28 23:09:59.023510+0100 geo-esp-training[457:91731] XPC connection interrupted
Can any one please tell me what's the problem?
I can add that I am using a MacBook Pro (Mid 2012) running MacOS Catalina 10.15.7 and Xcode Version 12.4.
The app is actually a Python app using the Kivy interface framework.
Thank you!
Henrik R.
This is the whole log output from Xcode:
2021-02-28 23:09:53.270436+0100 geo-esp-training[457:91714] [DYMTLInitPlatform] platform initialization successful
2021-02-28 23:09:53.757600+0100 geo-esp-training[457:91293] [framework] CUIThemeStore: No theme registered with id=0
2021-02-28 23:09:54.007960+0100 geo-esp-training[457:91293] Available orientation: KIVY_ORIENTATION=LandscapeLeft LandscapeRight Portrait PortraitUpsideDown
2021-02-28 23:09:54.008907+0100 geo-esp-training[457:91293] Initializing python
2021-02-28 23:09:54.536792+0100 geo-esp-training[457:91293] Running main.py: /var/containers/Bundle/Application/2C4A20A0-A9AA-4AC7-B8A7-1A6322B17DD9/geo-esp-training.app/YourApp/main.pyc
[INFO ] [Kivy ] v2.1.0.dev0
[INFO ] [Kivy ] Installed at "/var/containers/Bundle/Application/2C4A20A0-A9AA-4AC7-B8A7-1A6322B17DD9/geo-esp-training.app/lib/python3.8/site-packages/kivy/__init__.py"
[INFO ] [Python ] v3.8.2 (default, Feb 26 2021, 22:00:00)
[Clang 12.0.0 (clang-1200.0.32.29)]
[INFO ] [Python ] Interpreter at "/var/containers/Bundle/Application/2C4A20A0-A9AA-4AC7-B8A7-1A6322B17DD9/geo-esp-training.app/geo-esp-training"
[INFO ] [Factory ] 186 symbols loaded
[INFO ] [Image ] Providers: img_imageio, img_tex (img_dds, img_sdl2, img_ffpyplayer, img_pil ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Video ] Provider: null(['video_ffmpeg', 'video_ffpyplayer'] ignored)
Got dlopen error on Foundation: dlopen(/System/Library/Frameworks/Foundation.framework/Versions/Current/Foundation, 1): image not found
Got fallback dlopen error on Foundation: dlopen(/Groups/System/Library/Frameworks/Foundation.framework/Versions/Current/Foundation, 1): image not found
2021-02-28 23:09:59.023510+0100 geo-esp-training[457:91731] XPC connection interrupted
[WARNING] [Factory ] Ignored class "ScalableLabel" re-declaration. Current - module: None, cls: class 'sharebox_ubuntu.ScalableLabel', baseclass: None, filename: None. Ignored - module: None, cls: None, baseclass: Label, filename: /private/var/containers/Bundle/Application/2C4A20A0-A9AA-4AC7-B8A7-1A6322B17DD9/geo-esp-training.app/YourApp/MyTabbedPanel.kv.
Traceback (most recent call last):
File "/Users/henrik/geo-esp-training-ios/YourApp/main.py", line 252, in module
File "/Users/henrik/geo-esp-training-ios/YourApp/main.py", line 180, in __init__
PermissionError: [Errno 1] Operation not permitted: 'geo-esp-train.cfg'
2021-02-28 23:09:59.085006+0100 geo-esp-training[457:91293] Application quit abnormally!
2021-02-28 23:09:59.294003+0100 geo-esp-training[457:91293] Leaving