registro de problemas de desarrollo de iOS en 2022

1.ld: advertencia: no se pudo encontrar ni utilizar el marco vinculado automáticamente 'xxxFramework' Símbolos indefinidos 【别人】

Motivo: el marco SDK utilizado hace referencia a otro marco A. Aunque ambas son bibliotecas estáticas, cuando se introduce el SDK, también se debe introducir el marco A. De lo contrario, aparecerá esta advertencia y el símbolo informado no existirá.

2.C++ + #include<memoria> indicador de puntero inteligente....usr/include/c++/v1/__threading_support:457:11: compilación de error: uso del identificador no declarado 'nanosleep'. 【otra gente】

Motivo: las rutas de búsqueda de encabezado introducen el archivo de encabezado FFmpeg, uno de los cuales se llama time.h, y nanosleep proviene del archivo de encabezado /usr/include/time.h, lo que provoca un conflicto y provoca que el sistema se bloquee al compilar y buscar. el archivo de encabezado. El archivo de encabezado se sobrescribe.

3. Problema de anidamiento de bibliotecas dinámicas y estáticas: https://www.jianshu.com/p/b03d617917d6 [Otros]

 4.xcode14 conexión del dispositivo ios 15.7 xcode indica "Error al preparar el dispositivo para el desarrollo". Motivo: aunque xcode 14 incluye compatibilidad con dispositivos para iOS16, no incluye compatibilidad con dispositivos para 15.7. 【Propio】

5.LEEAlert no puede aparecer si no está escrito en una cadena. 【Propio】

写了一个类方法,方法里的代码如下。

// 这里获取了一下config的对象
LEEBaseConfigModel *config = [LEEAlert alert].config;
    config.LeeAddTitle(^(UILabel * _Nonnull label) {
        label.text = @"123123";
        label.textColor = UIColor.titleDarkColor;
        label.font = [UIFont systemFontOfSize:15];
    }).LeeAddContent(^(UILabel * _Nonnull label) {
        label.text = @"123123";
        label.font = [UIFont systemFontOfSize:15];
        label.textColor = UIColor.titleColor;
    }).LeeAddAction(^(LEEAction * _Nonnull action) {
        action.title = @"123123";
    }).LeeAddAction(^(LEEAction * _Nonnull action) {
        action.title = @"123123";
    }).LeeShow();

La razón es que cuando se compila el producto, las variables locales contienen las propiedades del objeto temporal, que se liberará porque el objeto temporal se libera inmediatamente, lo que hace que la ventana emergente no sea válida. Lo extraño es que cuando se compila el desarrollo, el lanzamiento no ocurre inmediatamente, lo que genera una ventana emergente exitosa. La solución es mantener [alerta LEEAlert] en una variable local.

6.La fijación de SSL debe obtener el período de validez del certificado cer, por lo que se utiliza OpenSSL para analizar el certificado. Resultó que había una biblioteca estática de OpenSSL en el proyecto, pero no sabía el número de versión, así que descargué el archivo de encabezado 1.1.1. Se descubre que se puede obtener el número de serie, pero el número de versión es -1 y el tiempo devuelto por X509_get_notAfter es nulo. Descargue una biblioteca compilada y un archivo de encabezado, haga un proyecto de demostración y descubra que se puede obtener el tiempo, por lo que se determina que el problema se debe a versiones inconsistentes del archivo de encabezado. Utilice IDA para obtener la versión de la biblioteca estática número 1.0.2h e introduzca el archivo de encabezado de esta versión en el proyecto. Debido a que la versión es anterior, indica que algunas funciones no existen. Después del reemplazo, se obtiene con éxito el tiempo efectivo. 【Propio】

7.NSDictionary no puede leer el archivo plist correspondiente a NSUserDefaults y el resultado está vacío. Motivo: NSUserDefaults se almacena en formato bplist, no en formato xml. Se pueden obtener archivos más pequeños, pero la API NSDictionary no puede leerlos. 【Propio】

8. Lectura de texto AVSpeechSynthesizer solicita La consulta de com.apple.MobileAsset.VoiceServices.VoiceResources falló: 2. Motivo: el sistema está silenciado. Solución: active la sesión de audio y establezca la categoría en AVAudioSessionCategoryPlayback.

Supongo que te gusta

Origin blog.csdn.net/Mamong/article/details/127043205
Recomendado
Clasificación