Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Xamarin.iOS non è in grado di risolvere System.ValueTuple
Questo errore si verifica a causa di un'incompatibilità con Visual Studio.
Visual Studio 2017 Update 1 (versione 15.1 o precedente) è compatibile solo con System.ValueTuple NuGet 4.3.0 (o versione precedente).
Visual Studio 2017 Update 2 (versione 15.2 o successiva) è compatibile solo con System.ValueTuple NuGet 4.3.1 o versione successiva.
Scegliere il NuGet System.ValueTuple corretto corrispondente all'installazione di Visual Studio 2017.
Ricezione del messaggio di errore "Errore durante il recupero delle informazioni sull'aggiornamento"
Quando si tenta di aggiornare il software e viene visualizzato questo messaggio di errore, provare a riavviare l'IDE. In caso di esito negativo, provare a disconnettersi e quindi tornare all'account all'interno dell'IDE.
Ricerca per categorie creare outlet o azioni con Interface Builder?
Per altre informazioni sull'uso di outlet e azioni in IB, vedi le guide outlet e azioni di Apple.
System.Text.Encoding.GetEncoding genera notSupportedException
È possibile usare una codifica che non viene aggiunta per impostazione predefinita. Per informazioni su come aggiungere il supporto per altre codifiche, vedere la pagina Internazionalizzazione .
System.MissingMethodException (qualsiasi altro elemento)
Il membro è stato probabilmente rimosso dal linker e non esiste nell'assembly in fase di esecuzione. Esistono diverse soluzioni per questo errore:
- Aggiungere l'attributo
[Preserve]al membro. Questo attributo impedirà al linker di rimuoverlo. - Quando si richiama mtouch, usare le opzioni -nolink o -linksdkonly:
- -nolink disabilita tutto il collegamento.
- -linksdkonly collegherà solo gli assembly forniti da Xamarin.iOS, ad esempio xamarin.ios.dll, mantenendo tutti i tipi negli assembly creati dall'utente, ovvero i progetti dell'app.
Gli assembly sono collegati in modo che il file eseguibile risultante sia più piccolo. La disabilitazione del collegamento può comportare un eseguibile di dimensioni maggiori rispetto a quelle desiderate.
Viene visualizzata un'eccezione ModelNotImplementedException
Questa eccezione significa che si sta chiamando base. Metodo () su una classe che esegue l'override di un modello. Non è necessario chiamare il metodo di base in una classe per i modelli (classi contrassegnate con l'attributo [Model].
Questa classe non è conforme alla codifica del valore della chiave per la chiave XXXX
Se viene visualizzato questo errore durante il caricamento di un file NIB, significa che il valore XXXX non è stato trovato nella classe gestita. Manca una dichiarazione simile alla seguente:
[Connect]
TypeName XXXX {
get {
return (TypeName) GetNativeField ("XXXX");
}
set {
SetNativeField ("XXXX", value);
}
}
La definizione precedente viene generata automaticamente da Visual Studio per Mac per tutti i file XIB aggiunti a Visual Studio per Mac nel NAME_OF_YOUR_XIB_FILE.designer.xib.cs file.
Inoltre, i tipi contenenti il codice precedente devono essere una sottoclasse di NSObject. Se il tipo contenitore si trova all'interno di uno spazio dei nomi, deve avere anche un attributo [Register] che fornisce un nome di tipo senza uno spazio dei nomi (poiché Interface Builder non supporta gli spazi dei nomi nei tipi):
namespace Samples.GLPaint {
// The [Register] attribute overrides the type name registered
// with the Objective-C runtime, in this case removing the namespace.
[Register ("AppDelegate")]
public class AppDelegate {/* ... */}
}
Classe sconosciuta XXXX nel file Interface Builder
Questo errore si verifica quando si definisce una classe in un file del generatore di interfacce, ma non si include l'implementazione effettiva nel codice C#.
Aggiungere codice simile al seguente:
public partial class MyImageView : UIView {
public MyImageView (IntPtr handle) : base (handle {}
}
System.MissingMethodException: nessun costruttore trovato per Foo.Bar::ctor(System.IntPtr)
Questo errore si verifica in fase di esecuzione quando si crea un'istanza delle classi a cui viene fatto riferimento dal file di Interface Builder. L'errore indica che manca un costruttore che accetta un singolo IntPtr come parametro.
Il costruttore con un handle IntPtr viene usato per associare gli oggetti gestiti alle relative rappresentazioni non gestite.
Per correggere questo errore, aggiungere la riga di codice seguente alla classe Foo.Bar:
public Bar (IntPtr handle) : base (handle) { }
Il tipo {Foo} non contiene una definizione per GetNativeField e non è stato trovato alcun metodo GetNativeField di estensione di tipo {Foo}
Se viene visualizzato questo errore nei file generati dalla finestra di progettazione (*.xib.designer.cs), significa uno dei due elementi seguenti:
1) Classe parziale mancante o classe base
Le classi parziali generate dalla finestra di progettazione devono avere classi parziali corrispondenti nel codice utente che ereditano da alcune sottoclassi di NSObject, spesso UIViewController. Assicurarsi di disporre di una classe di questo tipo per il tipo che restituisce l'errore.
2) Spazi dei nomi predefiniti modificati
I file della finestra di progettazione vengono generati usando le impostazioni predefinite dello spazio dei nomi del progetto. Lo spazio dei nomi generato nella classe parziale può cambiare se queste impostazioni sono state modificate o rinominate il progetto. Le classi parziali generate potrebbero non trovarsi più nello stesso spazio dei nomi delle controparti del codice utente.
Le impostazioni dello spazio dei nomi sono disponibili nella finestra di dialogo Opzioni progetto. Lo spazio dei nomi predefinito si trova nella sezione Impostazioni Generale-Main>. Il nome del progetto viene usato come valore predefinito se è vuoto. Le impostazioni più avanzate dello spazio dei nomi sono disponibili nella sezione Criteri di denominazione code->.NET.
Avviso per le azioni: il metodo privato 'Foo' non viene mai usato. (CS0169)
Le azioni per i file del generatore di interfacce sono connesse ai widget tramite reflection in fase di esecuzione, quindi questo avviso è previsto.
È possibile usare "#pragma warning disable 0169" "#pragma warning enable 0169" intorno alle azioni se si vuole eliminare questo avviso solo per questi metodi. Se si vuole disabilitarla per l'intero progetto (non consigliato), aggiungere 0169 al campo "Ignora avvisi" nelle opzioni del compilatore.
mtouch non è riuscito con il messaggio seguente: Impossibile aprire l'assembly '/path/to/yourproject.exe'
Se viene visualizzato questo messaggio di errore, in genere il problema è il percorso assoluto del progetto contiene uno spazio. Questo problema verrà risolto in una versione futura di Xamarin.iOS. È possibile risolvere il problema spostando il progetto in una cartella senza spazi.
La versione di sqlite3 è precedente. Eseguire l'aggiornamento almeno alla versione 3.5.0.
Questo messaggio si verifica quando sono soddisfatte tutte le condizioni seguenti:
- Si fa riferimento a Mono.Data.Sqlite nel progetto
- Il Mac esegue macOS X Leopard (10.5)
- Eseguire l'app all'interno del simulatore.
Il problema è che Mono sta raccogliendo il sistema operativo X libsqlite3.dylib, non il file i Telefono Simulatorlibsqlite3.dylib. L'app funzionerà sul dispositivo, ma non sul simulatore.
La distribuzione nel dispositivo ha esito negativo con System.Exception: AMDeviceInstallApplication restituito 3892346901
Questo errore indica che la configurazione di firma del codice per il certificato o l'ID bundle non corrisponde al profilo di provisioning installato nel dispositivo. Verificare di avere selezionato il certificato appropriato in Project Options-i> Telefono Bundle Signing e l'ID bundle corretto specificato in Project Options-i> Telefono Application.
Il completamento del codice non funziona in Visual Studio per Mac
Assicurarsi di usare la versione più recente di Visual Studio per Mac e Xamarin.iOS
Se il problema è ancora presente, inviare un bug, allegare ~ /Library/Logs/XamarinStudio-{VERSION}/Ide-{TIMESTAMP}.log, AndroidTools-{TIMESTAMP}.log e Components-{TIMESTAMP}.log file di log.
Se tutto il resto ha esito negativo, è possibile provare a rimuovere la cache di completamento del codice in modo che venga rigenerata:
[rm -r ~/.config/XamarinStudio-{VERSION}/CodeCompletionData]
Prestare attenzione a digitare correttamente questo comando o rimuovere accidentalmente file importanti.
Visual Studio per Mac si arresta in modo anomalo quando si copia il testo
Le popolari utilità Mac QuickSilver, Google Toolbar e LaunchBar hanno funzionalità degli Appunti che danneggiano Visual Studio per Mac memoria. Nelle opzioni è possibile elencare Visual Studio per Mac come processo con cui non dovrebbero interferire.
Visual Studio per Mac si lamenta di Mono 2.4 richiesto
Aggiornare l'installazione di Mono 2.4 se è stato aggiornato Visual Studio per Mac e quando si tenta di avviare di nuovo Visual Studio per Mac, viene visualizzato un messaggio che indica che Mono 2.4 non è presente.
Mono 2.4.2.3_6 risolve alcuni problemi importanti che impedivano l'esecuzione affidabile Visual Studio per Mac, a volte bloccava Visual Studio per Mac all'avvio o impediva la generazione del database di completamento del codice.
Dopo aver installato il nuovo Mono, Visual Studio per Mac verrà avviato come previsto.
Asserzione in .. /.. /.. /.. /mono/metadata/generic-sharing.c:704, condizione 'oti' non soddisfatta
Se si riceve l'analisi dello stack seguente:
- Assertion at ../../../../mono/metadata/generic-sharing.c:704, condition `oti' not met
Stacktrace:
at System.Collections.Generic.List`1<object>..cctor () <0xffffffff>
at System.Collections.Generic.List`1<object>..cctor () <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_dynamic (intptr,intptr,intptr,intptr) <0xffffffff>`
Significa che si sta collegando una libreria statica compilata con il codice personale nel progetto. In i Telefono SDK versione 3.1 (o successiva al momento della stesura di questo articolo), Apple ha introdotto un bug nel linker durante il collegamento di codice non thumb (Xamarin.iOS) con codice Thumb (libreria statica). è necessario collegare una versione non thumb della libreria statica per attenuare questo problema.
System.ExecutionEngineException: tentativo di eseguire il metodo di compilazione JIT (wrapper gestito da gestito a gestito) Foo[]:System.Collections.Generic.ICollection'1.get_Count ()
Il suffisso [] indica che la libreria di classi chiama un metodo su una matrice tramite una raccolta generica, ad esempio IEnumerable<>, ICollection<> o IList<>. Come soluzione alternativa, è possibile forzare in modo esplicito il compilatore AOT a includere il metodo chiamando manualmente il metodo . Assicurarsi che questo codice venga eseguito prima della chiamata che ha attivato l'eccezione. In questo caso, è possibile scrivere:
Foo [] array = null;
int count = ((ICollection<Foo>) array).Count;
Che forza il compilatore AOT a includere il metodo get_Count.
Visual Studio per Mac editor di origine è estremamente lento
A volte l'editor di origine Visual Studio per Mac diventa estremamente lento, sembrando bloccarsi per diversi secondi tra i caratteri di digitazione.
Questo problema è molto raro ed estremamente difficile da riprodurre. In genere non può essere riprodotto nello stesso computer dopo il riavvio Visual Studio per Mac. Per questo motivo, è consigliabile che sia possibile eseguire diversi passaggi di debug prima di riavviare Visual Studio per Mac e inviare i risultati a Microsoft.
- Provare a chiudere la scheda dell'editor e riaprirla. Ci vuole qualche modifica o sposta il cursore intorno fino a quando il rallentamento non si verifica di nuovo?
- Disabilitare "Beam Sync" usando lo strumento di sviluppo "Debugg" (che è possibile trovare usando Spotlight) e verificare se le prestazioni dell'editor di origine vengono ripristinate normalmente.
- Provare a ripetere il passaggio (1) con La sincronizzazione trave ancora disabilitata.
- Se l'editor si blocca per più di pochi secondi, provare a eseguire "killall -QUIT [Visual Studio per Mac]" in un terminale mentre è bloccato. Potrebbe essere difficile eseguire il comando kill mentre l'editor è bloccato, ma è essenziale farlo. Il comando forza Mono a scrivere analisi dello stack di tutti i thread nel log MD. È possibile usare il log per individuare lo stato in cui si trovano i thread mentre il Visual Studio per Mac è bloccato.
Allegare i log XS, ~/Library/Logs/XamarinStudio-{VERSION}/Ide-{TIMESTAMP}.log, AndroidTools-{TIMESTAMP}.log e Components-{TIMESTAMP}.log (nelle versioni precedenti di XS/MonoDevelop è sufficiente inviare ~/Library/Logs/MonoDevelop-(3.0|2.8|2.6)/MonoDevelop.log).
Nota
Il problema precedente è stato risolto in XS 2.2 Final**
L'applicazione compilata è molto grande
Per supportare il debug, le compilazioni di debug contengono codice aggiuntivo. I progetti compilati in modalità di rilascio sono una frazione delle dimensioni.
A partire da Xamarin.iOS 1.3, le compilazioni di debug includono il supporto del debug per ogni singolo componente di Mono (ogni metodo in ogni classe dei framework).
Con Xamarin.iOS 1.4 verrà introdotto un metodo più dettagliato per il debug. Il valore predefinito fornirà la strumentazione di debug per il codice e le librerie e non per tutti gli assembly Mono. Sarà necessario acconsentire esplicitamente a fornire la strumentazione di debug per tutti gli assembly Mono.
Blocchi di installazione
I programmi di installazione di Mono e Xamarin.iOS si bloccano se è in esecuzione il simulatore i Telefono. Questo problema non è limitato a Mono o Xamarin.iOS. Questo problema è coerente in qualsiasi software che tenta di installare software in macOS Snow Leopard se il simulatore i Telefono è in esecuzione durante l'installazione.
Assicurarsi di chiudere il simulatore i Telefono e ripetere l'installazione.
Il debugger non è in grado di connettersi al dispositivo
Quando si avvia il debug di una configurazione del dispositivo, verrà visualizzata una finestra di dialogo che indica che sta tentando di connettersi all'applicazione. Esistono diversi motivi per cui il debugger potrebbe non essere in grado di connettersi all'applicazione, a seconda della modalità usata per connettersi (USB o WiFi).
Se il dispositivo e l'host del debugger si trovano in reti diverse, un firewall o una rete privata potrebbero impedire all'applicazione di connettersi all'host del debugger in modalità Wi-Fi.
Visual Studio per Mac potrebbe non essere in grado di eseguire query sull'INDIRIZZO IP corretto dell'host. In modalità WiFi Visual Studio per Mac fornisce all'applicazione tutti gli INDIRIZZI IP che può trovare dell'host. L'applicazione prova tutti a verificare se può usarli per connettersi a Visual Studio per Mac.
Un altro dispositivo è connesso a una porta USB nell'host. In alcuni casi, altri dispositivi connessi alle porte USB nell'host sono stati noti per interferire in qualche modo con il debug in modalità USB.
Quando la modalità Wi-Fi o USB non funziona, è possibile provare facilmente l'altro. In Visual Studio per Mac aprire le Preferenze, passare alla pagina Preferenze/Debugger/i Telefono Debugger e attivare la casella di controllo "Debug dei dispositivi iOS tramite WiFi anziché tramite USB". Se nessuno dei due funziona, è possibile visualizzare altre informazioni sull'errore nella console del dispositivo in modalità dettagliata, che è abilitata aggiungendo "-v -v -v" agli argomenti mtouch aggiuntivi nelle opzioni del progetto.
Errore 134: mtouch non è riuscito con il messaggio seguente:
Questo errore può essere generato se si sta provando a compilare con -nolink nello stile Xamarin.iOS 1.4 delle versioni. È possibile risolvere questo errore specificando argomenti aggiuntivi nella configurazione del progetto monosviluppo.
Aggiungere l'argomento
-nosymbolstrip
e il problema dovrebbe essere risolto.
L'identità di distribuzione non viene visualizzata nelle opzioni di firma del progetto Visual Studio per Mac
Visual Studio per Mac 2.2 presenta un bug che causa il mancato rilevamento dei certificati di distribuzione contenenti una virgola. Eseguire l'aggiornamento a Visual Studio per Mac 2.2.1.
Errore "AFCFileRefWrite restituito: 1" durante il caricamento
Durante il caricamento di un'app nel dispositivo, è possibile che venga visualizzato un errore "AFCFileRefWrite restituito: 1". Questo errore può verificarsi se si dispone di un file di lunghezza zero.
Errore "mtouch non riuscito senza output"
La versione corrente di Xamarin.iOS e Visual Studio per Mac esito negativo quando il nome del progetto o la directory in cui è archiviata la soluzione o il progetto contiene spazi. Per risolvere il problema:
- Assicurarsi che il progetto e la directory in cui sono archiviati non contengano spazi.
- Nel progetto "Main Impostazioni" assicurarsi che il nome del progetto non contenga spazi.
Errore "Il file binario caricato non è valido. Per compilare l'applicazione è stata usata una versione beta non definitiva dell'SDK"
Questo errore è in genere causato da un progetto avviato nello sviluppo iPad prima del rilascio di Xamarin.iOS 2.0.0. È probabile che nel file Info.plist siano presenti alcune chiavi, ad esempio:
<key>UIDeviceFamily</key>
<array>
<string>1</string>
</array>
Questa coppia di chiavi deve essere rimossa come Visual Studio per Mac gestisce automaticamente.
Errore "È stata usata una versione beta non definitiva dell'SDK per compilare l'app"
(Contributo di Ed Anuff)
Seguire questa procedura:
- Modificare la versione dell'SDK nelle opzioni di compilazione i Telefono in 3.2. La connessione iTunes rifiuterà il servizio durante il caricamento perché viene visualizzata un'app compatibile con iPad compilata con una versione dell'SDK inferiore alla 3.2
- Creare un info.plist personalizzato per il progetto e impostare in modo esplicito MinimumOSVersion su 3.0. Verrà eseguito l'override del valore MinimumOSVersion 3.2 impostato da Xamarin.iOS. In caso contrario, l'app non verrà eseguita su i Telefono.
- Ricompilare, comprimere e caricare in iTunes Connect.
Eccezione non gestita: System.Exception: Impossibile trovare il selettore someSelector: in {type}
Questa eccezione è causata da uno dei tre elementi seguenti:
- È stato fornito un selettore al Objective-C runtime senza applicare l'attributo [Export] corrispondente a un metodo
- È stato abilitato il collegamento completo e non è stato applicato l'attributo [Preserve] al metodo [Export]ed.
- L'attributo [Export] è stato applicato a un metodo privato in un tipo ereditato.
MainWindow.xib.designer.cs file non viene aggiornato
Si è verificato un bug in Xamarin Studio 2.4 che ha causato il mancato raggruppamento del file MainWindow.xib con il file MainWindow.xib.designer nei nuovi progetti. Ciò significa che non aggiornerebbe il codice della finestra di progettazione per quel particolare file.
Questo problema è stato risolto nella versione di Visual Studio per Mac, usare l'aggiornamento predefinito per eseguire l'aggiornamento alla versione più recente disponibile.
È possibile correggere i progetti esistenti rimuovendo (non eliminando) il file xib e il relativo file di progettazione, quindi aggiungendolo di nuovo. I file verranno raggruppati correttamente.
UIAlertView o UIActionSheet svanire dopo la creazione
Se si dispone di codice simile al seguente:
var actionSheet = new UIActionSheet ("My ActionSheet", null, null, "OK", null){
Style = UIActionSheetStyle.Default
};
actionSheet.Clicked += delegate (sender, args){
Console.WriteLine ("Clicked on item {0}", args.ButtonIndex);
};
L'oggetto "actionSheet" si trova come variabile temporanea nella funzione . Non appena la funzione termina, l'oggetto è idoneo per l'operazione di Garbage Collection. Finisce per essere garbage collection nel passaggio.
Per risolvere questo problema, è necessario mantenere un riferimento a "actionSheet" all'esterno del metodo, in un punto qualsiasi che vivrà oltre il metodo.
Project Always Runs in the iPad Simulator
Il programma di installazione di i Telefono SDK 4.0 installa 2 SDK. SDK 3.2 per la compilazione di app solo iPad. E l'SDK 4.0, usato per la creazione di app i Telefono e universali. Installa anche un simulatore 3.2, che simula solo un iPad e un simulatore 4.0 che simula i Telefono o i Telefono 4. Tutti gli SDK e i simulatori meno recenti vengono rimossi.
Visual Studio per Mac opzioni di compilazione del progetto i Telefono include un'impostazione per la versione dell'SDK che verrà usata nella compilazione dell'app. Questa impostazione è disponibile in Opzioni progetto-Build-i>> Telefono Compilazione.
I nuovi progetti in Visual Studio per Mac usano l'SDK installato meno recente come impostazione predefinita dell'SDK. Se l'SDK specificato non esiste, Visual Studio per Mac userà il più vicino possibile per compilare l'app. Questa operazione è stata eseguita in modo che i progetti non richiedano sempre l'SDK più recente. Tuttavia, questo comporta attualmente l'uso dell'SDK 3.2, che comporta l'uso del simulatore iPad.
Per risolvere il problema usando l'SDK 4.0, passare a Opzioni progetto-Build-i>> Telefono Compila> e modificare il valore dell'SDK in "4.0" usando la casella di riepilogo a discesa. Queste modifiche devono essere apportate per ogni combinazione di configurazione e piattaforma, a cui si accede usando gli elenchi a discesa nella parte superiore del pannello.
La versione dell'SDK non deve essere confusa con l'impostazione "Versione minima del sistema operativo". Questo valore non deve corrispondere al valore della versione dell'SDK. Influisce sulla versione minima del sistema operativo in cui verrà installata l'app, che può essere precedente all'SDK, purché si usino solo LE API esistenti nel sistema operativo precedente o l'uso di funzionalità più recenti usando i controlli della versione del sistema operativo di runtime. Impostarla sulla versione meno recente del sistema operativo in cui si testa l'app.
Il menu Project-i> Telefono Simulator Target> può essere usato per selezionare il simulatore usato per impostazione predefinita durante l'esecuzione o il debug di un progetto. Inoltre, è possibile usare il menu Run-Run> With> per selezionare un simulatore specifico con cui eseguire.
ibtool restituisce l'errore 133
Questo errore indica che XCode 4 è installato. In XCode 4, ibtool è stato rimosso. Non è più possibile modificare i file XIB con uno strumento autonomo.
Se si vuole usare ibtool, installare XCode serie 3, disponibile dal sito Web di Apple.
"Impossibile creare l'associazione di visualizzazione per il tipo mime: application/vnd.apple-interface-builder"
Questo errore si verifica se si tenta di creare un'interfaccia utente i Telefono da un progetto non i Telefono. Assicurarsi di iniziare con una soluzione i Telefono/iPad, non è possibile aggiungere solo elementi dell'interfaccia utente i Telefono a un progetto non i Telefono/iPad.
Arresto anomalo dell'avvio durante l'esecuzione all'interno del simulatore iOS
Se si verifica un arresto anomalo del runtime (SIG edizione Standard GV) all'interno del simulatore, insieme a un'analisi dello stack simile alla seguente:
at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes (System.Reflection.Assembly,bool)
at MonoTouch.ObjCRuntime.Runtime.RegisterAssembly (System.Reflection.Assembly)
at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr)
... quindi è probabile che nella directory dell'applicazione simulatore sia presente uno o più assembly non aggiornati. Tali assembly possono esistere perché il simulatore iOS di Apple aggiunge e aggiorna i file, ma non li elimina mai. La soluzione più semplice consiste nel selezionare "Reimposta e contenuto e Impostazioni..." dal menu del simulatore.
Avviso
Verranno rimossi tutti i file, le applicazioni e i dati dal simulatore. Al successivo esecuzione dell'applicazione, Visual Studio per Mac la distribuirà nel simulatore e non sarà presente alcun assembly obsoleto per causare l'arresto anomalo.
Il simulatore si blocca durante l'installazione dell'applicazione
Questo errore può verificarsi quando i nomi delle applicazioni includono un '.' (punto) nel loro nome. Uso di un '.' (punto) nel nome eseguibile non è consentito in CFBundleExecutable, anche se funziona in molti altri casi (ad esempio i dispositivi).
"Il valore non deve includere alcuna estensione nel nome".
Errore: "Il tipo di attributo personalizzato 0x43 non è supportato" quando si fa doppio clic sui file xib
Questo messaggio è causato dal tentativo di aprire file con estensione xib quando le variabili di ambiente vengono impostate in modo non corretto. Questo errore non dovrebbe verificarsi con l'utilizzo normale di Visual Studio per Mac e Xamarin.iOS. La riapertura Visual Studio per Mac da /Applications deve risolvere il problema.
Quando si tenta di aggiornare il software e viene visualizzato questo messaggio di errore, inviare un messaggio di posta elettronica support@xamarin.com
L'applicazione viene eseguita nel simulatore ma ha esito negativo nel dispositivo
Questo problema può manifestarsi in più forme e non sempre genera un errore coerente. Se l'applicazione contiene un file xib, verificare che l'azione di compilazione in .xib sia impostata su InterfaceDefinition. Questa è l'azione di compilazione predefinita per .xibs.
Per controllare l'azione di compilazione, fare clic con il pulsante destro del mouse sul file xib e scegliere Azione di compilazione.
System.NotSupportedException: nessun dato è disponibile per la codifica 437
Quando si includono librerie di terze parti nell'app Xamarin.iOS, è possibile che venga visualizzato un errore nel formato "System.NotSupportedException: nessun dato è disponibile per la codifica 437" quando si tenta di compilare ed eseguire l'app. Ad esempio, le librerie, ad Ionic.Zip.ZipFileesempio , possono generare questa eccezione durante l'operazione.
Questa eccezione può essere risolta aprendo le opzioni per il progetto Xamarin.iOS, passando a iOS Build>Internationalization e controllando l'internazionalizzazione occidentale.
Impossibile avviare Xamarin.Launcher Impossibile trovare l'eseguibile 'mlaunch.exe'
In alcuni casi, il software antivirus può contrassegnare erroneamente Xamarin.iOS SDK come malware e rimuovere i file necessari, danneggiando l'SDK. Questo genererà errori come "Impossibile avviare Xamarin.Launcher Non è stato possibile trovare il file eseguibile 'mlaunch.exe'".
Se si è verificato un problema, escludere mlaunch.exe dallo scanner antivirus per evitare la ricorrenza. Per altre informazioni, vedere How to create an Application Control exception or stop sysfer.dll injection into a process with Endpoint Protection for Symantec, and Exclude files and folders from Norton Auto-Protect, SONAR e Download Intelligence scans for Norton. È inoltre consigliabile segnalare un falso positivo a Symantec o Norton.
Importante
Per gli utenti di Norton, i membri della community hanno anche segnalato che potrebbe essere necessario disabilitare l'analisi inattiva come descritto qui: Windows, Mac.
Dopo aver aggiunto un'esclusione per mlaunch.exe, sarà necessaria una reinstallazione per ripristinare i file mancanti. È sufficiente cambiare canale nel programma di aggiornamento per reinstallare:
- Menu >di Visual Studio Controllare la disponibilità di aggiornamenti.
- Selezionare un canale di aggiornamento diverso nell'elenco a discesa e premere il pulsante Cambia canale .
- Attendere il download degli aggiornamenti.
- Tornare al canale originale e installare gli aggiornamenti.
Se queste istruzioni non risolvono il problema, aggiungere un commento al seguente problema di GitHub: 8736.