I am subclassing ARView. I'm seeing the following crash on Firebase during initialization. Unfortunately I can't reproduce it locally so I don't really know what is going on. All the devices are running iOS 15. Most of the devices have < 60 MB available RAM but not all, a few have more. It doesn't smell like a memory issue, but I mention it here... has anyone seen this?
It crashes in this thread:
Crashed: com.apple.root.default-qos
EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000000arrow_right
0
CoreRE
re::CompoundShape::~CompoundShape() + 168
1
CoreRE
re::CompoundShape::~CompoundShape() + 148
2
CoreRE
re::CollisionShapeAssetLoader::unloadAsset(void*) + 176
3
CoreRE
re::internal::AssetBackgroundLoader::unloadAsset(re::internal::AssetLoadItem&) + 168
4
CoreRE
re::internal::AssetBackgroundLoader::runIfNeeded(re::internal::AssetLoadItem&) + 88
after starting on the main three:
com.apple.main-thread0
ARKitCore
+[ARSession setRenderType:] + 1022
2RealityKit
ARView.init(frame:cameraMode:automaticallyConfigureSession:) + 740
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
My RealityKit app uses an ARView with camera mode .nonAR. Later it puts another ARView with camera mode .ar on top of this.
When I apply layout constraints to the second view the program aborts with the follow messages. If both views are of type .ar this doesn't occur, it is only when the first view is .nonAR and then has the second presented over it.
I have been unable so far to reproduce this behavior in a demo program to provide to you and the original code is complex and proprietary.
Does anyone know what is happening? I've seen other questions concerning situation but not under the same circumstances.
2021-12-01 17:59:11.974698-0500 MyApp[10615:6672868] -[MTLTextureDescriptorInternal validateWithDevice:], line 1325: error ‘Texture Descriptor Validation
MTLTextureDescriptor has width (4294967295) greater than the maximum allowed size of 16384.
MTLTextureDescriptor has height (4294967295) greater than the maximum allowed size of 16384.
MTLTextureDescriptor has invalid pixelFormat (0).
’
-[MTLTextureDescriptorInternal validateWithDevice:]:1325: failed assertion `Texture Descriptor Validation
MTLTextureDescriptor has width (4294967295) greater than the maximum allowed size of 16384.
MTLTextureDescriptor has height (4294967295) greater than the maximum allowed size of 16384.
MTLTextureDescriptor has invalid pixelFormat (0).
Using the code below to fetch data for multiple urls I encounter a number of errors such as:
2021-12-01 20:20:32.090690-0500 foo[63170:6750061] [assertion] Error acquiring assertion: <Error Domain=RBSAssertionErrorDomain Code=2 "Specified target process does not exist" UserInfo={NSLocalizedFailureReason=Specified target process does not exist}>
021-12-01 20:20:32.115662-0500 yerl[63170:6749861] [ProcessSuspension] 0x10baf8cc0 - ProcessAssertion: Failed to acquire RBS assertion 'ConnectionTerminationWatchdog' for process with PID=63200, error: Error Domain=RBSServiceErrorDomain Code=1 "target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit" UserInfo={NSLocalizedFailureReason=target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit}
I've added the following to my entitlements file:
<key>com.apple.security.network.client</key>
<true/>
with no change in the result. I gather that these are errors from a WKWebView but don't know how to resolve them.
@State private var metadataProvider: LPMetadataProvider?
...
metadataProvider?.startFetchingMetadata(for: url) { (linkMetadata, error) in
guard let linkMetadata = linkMetadata, let imageProvider = linkMetadata.iconProvider else { return }
imageProvider.loadObject(ofClass: UIImage.self) { (fetchedImage, error) in
if let error = error {
print(error.localizedDescription)
return
}
if let uiimage = fetchedImage as? UIImage {
DispatchQueue.main.async {
let image = Image(uiImage: uiimage)
self.image = image
print("cache: miss \(url.absoluteString)")
model.set(uiimage, for: url)
}
} else {
print("no image available for \(url.absoluteString)")
}
}
}
Thanks in advance.
I am presenting a list of Items which are sections by the categoryIdentifier property. My app uses CloudKit. When I add change the categoryIdentifier for an item it is display in the correct section and other running instances of the app do the same. When restarting the app some items are grouped under an incorrect section, but the cstegoryIdentifier within the item is still as it was set. My question is what I'm doing wrong that upon restart the organization is incorrect. In case it matters, I'm setting this in the container:
container.viewContext.automaticallyMergesChangesFromParent = true
As an aside: It seems necessary to make the sectioning type optional (as is the case in the underlying entity) like this
SectionedFetchResults<String?, Item>
Though the examples don't seem to need this.
struct ContentView: View {
@Environment(\.managedObjectContext) private var viewContext
@State private var isShowingItem = false
@State private var isAddingItem = false
@SectionedFetchRequest(
sectionIdentifier: \.categoryIdentifier,
sortDescriptors: [NSSortDescriptor(keyPath: \Item.name, ascending: true)],
animation: .default) private var sectionedItems: SectionedFetchResults<String?, Item>
var body: some View {
NavigationView {
List {
ForEach(sectionedItems) { section in
Section(header: Text(Category.nameForId(section.id, context: viewContext)).font(.headline)) {
ForEach(section) { item in
NavigationLink(destination: ItemInputView(item: item, category: Category.get(identifier: item.category, context: viewContext))) {
Text(item.getName())
}
}
}
}
}
.navigationTitle("Foo")
.sheet(isPresented: $isAddingItem) {
ItemInputView(item: nil, category: Category.getDefault(context: viewContext))
}
}
.navigationViewStyle(.stack)
}
}
Hi, after rotating the iPad ARCamera.trackingState transitions to .initilizing and the video freezes. The application as a whole still functions. I'm unable to extract a relevant code example as this is embedded in a larger application. I am not seeing this behavior on iPhone. Is there any possibility that this is related to layout constraints? I see some warnings when the rotation occurs. Is there anything else I might examine?
Thank you
Hi, why doesn't this view scroll? The image is taller than the screen.
struct ImageScroll: View {
@State var uiImage: UIImage
var body: some View {
ScrollView {
Image(uiImage: uiImage)
.focusable()
}
.focusable()
}
}
Thanks,
Spiff
Hi, is it possible to disable scrolling behavior in the SwiftUI List view? I'd like to take advantage of the new grouping features
List(content, children: \.children)
in List and want the list to be part of a larger scrolling view. As it stands I get an embedded scroll view for the list which is not my intent.
Thanks!
I'm trying to render a MKPolyline on tvOS and get a runtime exception with
_validateTextureView:531: failed assertion `cannot create View from Memoryless texture.'
This same code works fine on the iPad and I'm starting to think it just doesn't work on tvOS...unless this is a beta issue.