2013-06-03 16 views
18

posso facilmente trovare noErr = 0 nel codice sorgente della libreria OS X. Ma è piuttosto difficile trovare un elenco completo del codice di errore per OSStatus su iOS.iOS: dove trovare l'elenco completo dei codici OSStatus per iOS?

In Mac OS X, non è così difficile trovare cose come

kAudioHardwareUnsupportedOperationError 

Ma io non riesco a trovare informazioni utili per i codici iOS OSStatus. Sarebbe bello avere un elenco completo di essi o di eventuali puntatori ai file di intestazione che li definiscono.

Grazie!

UPDATE:

Non credo che la mia domanda è un duplicato della domanda di cui sopra. L'op di quella "possibile duplicazione" domanda voleva convertire i codici a 4 caratteri che già conosceva in stringhe leggibili dall'uomo. Invece, ecco il mio ulteriori specifiche:

Io non so nemmeno cosa 4-char o interi typedefed da utilizzare per iOS. Mi piacerebbe vedere qualcosa di simile a un elenco completo dei codici, come si farebbe normalmente vedere in molti progettazione C++ quadro/biblioteca, ad esempio, un elenco enum, o eccezioni standard, o anche i OSX codici k-qualcosa, che almeno può essere trovato solo nei documenti Xcode.

miei casi d'uso di questi codici sono:

Nelle mie funzioni personalizzate, ad esempio, alcuni callback CoreAudio che devono tornare OSStatus, mi piacerebbe tornare questi codici leggibili incorporati per indicare i tipi di errori di runtime. Senza la lista, non so cosa restituire, oltre a noErr.

Apparentemente, molti k codici OSX non sono definiti in ambiente IOS quindi non possono essere utilizzate in modo trasparente.

UPDATE (CONCLUSIONE):

ho finalmente trovato un indizio: la ricerca di parole chiave "Codici risultato" nella documentazione Xcode (organizzatore) e si ottiene più o meno classificato sezioni codici di ritorno di documentazione nella sezione "Guide di sistema "risultato. Questo è abbastanza buono per la mia domanda originale. -

+1

Io non credo che ci sia una lista completa; Credo che dipenda dall'API utilizzata quando dovrebbe essere documentata con la funzione. – trojanfoe

+0

È un brutto casino, e non penso che ci sia un singolo pezzo di documentazione per questo - almeno se c'è, non sono mai riuscito a trovarne uno. Ricerca di file di intestazioni che dovrà essere. – marko

+1

ho finalmente trovato un indizio: Ricerca per parole chiave di "Codici risultato" in Xcode documentazione (organizzatore) e otteniamo una più o meno categorizzati sezioni codici di ritorno di documentazione nel risultato "Guide di sistema". Questo è abbastanza buono per la mia domanda originale. – kakyo

risposta

11

Il meglio che posso fare per aiutare è fornire i risultati dell'utilizzo find dalla riga di comando:

$ cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk 
$ find . -name \*.h -exec fgrep -l OSStatus {} \; 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFile.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFileStream.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFormat.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioQueue.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioServices.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioSession.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AudioToolbox.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/AUGraph.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/ExtendedAudioFile.h 
./System/Library/Frameworks/AudioToolbox.framework/Headers/MusicPlayer.h 
./System/Library/Frameworks/AudioUnit.framework/Headers/AUComponent.h 
./System/Library/Frameworks/AudioUnit.framework/Headers/AudioComponent.h 
./System/Library/Frameworks/AudioUnit.framework/Headers/AudioOutputUnit.h 
./System/Library/Frameworks/AudioUnit.framework/Headers/AudioUnitProperties.h 
./System/Library/Frameworks/AudioUnit.framework/Headers/MusicDevice.h 
./System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h 
./System/Library/Frameworks/CoreFoundation.framework/Headers/CFError.h 
./System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMAudioClock.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMBase.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMBlockBuffer.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMBufferQueue.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMFormatDescription.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMSampleBuffer.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMSimpleQueue.h 
./System/Library/Frameworks/CoreMedia.framework/Headers/CMSync.h 
./System/Library/Frameworks/CoreMIDI.framework/Headers/MIDIDriver.h 
./System/Library/Frameworks/CoreMIDI.framework/Headers/MIDIServices.h 
./System/Library/Frameworks/CoreMIDI.framework/Headers/MIDISetup.h 
./System/Library/Frameworks/CoreMIDI.framework/Headers/MIDIThruConnection.h 
./System/Library/Frameworks/Foundation.framework/Headers/NSError.h 
./System/Library/Frameworks/MediaToolbox.framework/Headers/MTAudioProcessingTap.h 
./System/Library/Frameworks/Security.framework/Headers/SecBase.h 
./System/Library/Frameworks/Security.framework/Headers/SecIdentity.h 
./System/Library/Frameworks/Security.framework/Headers/SecImportExport.h 
./System/Library/Frameworks/Security.framework/Headers/SecItem.h 
./System/Library/Frameworks/Security.framework/Headers/SecKey.h 
./System/Library/Frameworks/Security.framework/Headers/SecTrust.h 
./System/Library/Frameworks/Security.framework/Headers/SecureTransport.h 
./usr/include/AssertMacros.h 
./usr/include/Endian.h 
./usr/include/MacTypes.h 
+0

Grazie trojanfoe. Sembra una soluzione (dolorosa). Lo userò per ora. È così triste che Apple non abbia ancora i codici di errore risolti nei loro documenti. – kakyo

+0

abbastanza interessante, ho appena ricevuto l'errore -25243 che non appare in nessun file .h, verificato con: find. -nome \*.h | xargs grep 25243 –

+0

-25243 = errSecNoAccessForItem, che si trova nelle intestazioni/documentazione Mac ma non in iOS. https://developer.apple.com/library/mac/documentation/security/Reference/keychainservices/Reference/reference.html – jrc

Problemi correlati