一个FlutterCocoapods项目打包问题集锦

news/2024/11/29 23:39:45/

一个Flutter&Cocoapods项目打包问题集锦

问题1 github加速问题

cocoapods项目需要访问https://github.com/CocoaPods/Specs.git,众所周知,github经常被墙,导致经常需要借助加速来下载和访问,这里可以使用油猴脚本或者Fastgithub浏览器插件来解决。我的解决方案是将Fastgithub的加速网址放到gitconfig文件中:

git config --global url."https://gitclone.com/github.com/CocoaPods/Specs.git".insteadOf "https://github.com/CocoaPods/Specs.git"

这个方案问题是,过一段时间加速器网址就不好使了,然后需要到浏览器中再通过“github加速”关键字再找一个加速网址。

问题2 ruby&cocoapods环境问题

遇到问题只能反复尝试安装和卸载ruby及cocoapods了,网上有的是方案。这里注意一下,可以通过GEM_HOME指定Ruby版本;cocopods有时候会遇到问题,需要创建好master和trunk repo。如果网络好的情况下,master和trunk可以直接通过git clone直接下载:

git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master
git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk

如果不行,可以通过fastgithub直接访问https://github.com/CocoaPods/Specs.git的zip文件,然后解压到~/.cocoapods/repos目录下,再重命名为master或者trunk。

问题3 ruby安装不了3.0.0的版本可能跟openssl的版本有关系

这个时候,需要先安装好openssl,然后再去安装ruby。

问题4 业务问题:CocoaPods could not find compatible versions for pod “shared_preferences_foundation”

[!] CocoaPods could not find compatible versions for pod "shared_preferences_foundation":In Podfile:FlutterPluginRegistrant (from `../unifyapp_flutter_module/.ios/Flutter/FlutterPluginRegistrant`) was resolved to 0.0.1, which depends onshared_preferences_foundationshared_preferences_foundation (from `../unifyapp_flutter_module/.ios/.symlinks/plugins/shared_preferences_foundation/ios`)Specs satisfying the `shared_preferences_foundation (from `../unifyapp_flutter_module/.ios/.symlinks/plugins/shared_preferences_foundation/ios`), shared_preferences_foundation` dependency were found, but they required a higher minimum deployment target.

这个问题查的惨啊,各种尝试后,发现问题在于Flutter工程在执行flutter pub get后生成的.ios文件夹下面,Podfile中platform的 版本是9.0, 而cocoapods主工程中Podfile的版本为10.0.

解决办法就是:
1、 在flutter工程中,执行完

flutter pub get

以后,进入.ios隐藏目录,将Podfile的target版本修改为11.0,然后再执行:

flutter build ios --release --no-codesign

2、 然后进入cocoapods主工程,先把Podfile的平台版本也修改为 11.0. 然后执行:

pod install

至此,一个困扰了3天的问题,从持续集成人员手里完美解决。

记之。


http://www.ppmy.cn/news/1112888.html

相关文章

谷粒商城----rabbitmq

一、 为什么要用 MQ? 三大好处,削峰,解耦,异步。 削峰 比如秒杀,或者高铁抢票,请求在某些时间点实在是太多了,服务器处理不过来,可以把请求放到 MQ 里面缓冲一下,把一秒内收到的…

遗传算法与粒子群算法的Python实现

遗传算法本文应用的是 python geatpy module粒子群算法本文应用的是 python pyswarm module 遗传算法 它的不等约束是...<0 import geatpy as ea import numpy as npea.Problem.single def evalVars(Vars): x1 Vars[0]x2 Vars[1]x3 Vars[2]x4 Vars[3]f (x1 2)**2 \…

泛化误差,训练误差,偏差,方差,偏置

泛化误差&#xff1a;就是把新用到模型上&#xff0c;比如说测试集体现的是一种泛化能力&#xff0c;也可以叫做测试误差 训练误差&#xff1a;也可以叫做经验误差 偏差&#xff08;距离远近&#xff09;&#xff1a;描述的是预测值的期望与真实值之间的差距&#xff0c;偏差…

【C刷题】day2

一、选择题 1、以下程序段的输出结果是&#xff08; &#xff09; #include<stdio.h> int main() { char s[] "\\123456\123456\t"; printf("%d\n", strlen(s)); return 0; } A: 12 B: 13 C: 16 D: 以上都不对【答案】&#xff1a; A 【解析】…

写一篇nginx配置指南

nginx.conf配置 找到Nginx的安装目录下的nginx.conf文件&#xff0c;该文件负责Nginx的基础功能配置。 配置文件概述 Nginx的主配置文件(conf/nginx.conf)按以下结构组织&#xff1a; 配置块功能描述全局块与Nginx运行相关的全局设置events块与网络连接有关的设置http块代理…

计算机竞赛 机器视觉的试卷批改系统 - opencv python 视觉识别

文章目录 0 简介1 项目背景2 项目目的3 系统设计3.1 目标对象3.2 系统架构3.3 软件设计方案 4 图像预处理4.1 灰度二值化4.2 形态学处理4.3 算式提取4.4 倾斜校正4.5 字符分割 5 字符识别5.1 支持向量机原理5.2 基于SVM的字符识别5.3 SVM算法实现 6 算法测试7 系统实现8 最后 0…

elementUI elfrom表单验证无效、不起作用常见原因

今天遇到一个变态的问题&#xff0c;因页面比较复杂&#xff0c;出现几组条件判断&#xff0c;每个template内部又包含很多表单&#xff01;&#xff01; <template v-if"transformTypeValue 1"></template><template v-else-if"transformTypeV…

[面试] k8s面试题 2

文章目录 核心组件1.什么是 Kubernetes 中的控制器&#xff08;Controller&#xff09;&#xff1f;请提供一些常见的控制器类型。2.请解释一下 Kubernetes 中的 Ingress 是什么&#xff0c;以及它的作用。3.如何通过命令行在 Kubernetes 中创建一个 Pod&#xff1f;4.Stateful…