当前位置: 首页 > news >正文

律所网站建设国队男子接力赛上海公司建立网站吗

律所网站建设国队男子接力赛,上海公司建立网站吗,凡科邮箱,wordpress 主体安装编辑已恢复 我们已与您断开连接。尝试重连时会保存您所做的变更。尝试重连 标题 1 已保存 Bin Song B 要发布此内容#xff0c;请选择键盘上的 ⌘Enter。 发布 关闭 Rust技术空间 … 跨平台使用调研 iOS使用Rust调研 添加表情符号 添加标题图像 添加状态 一、iOS 项…编辑已恢复 我们已与您断开连接。尝试重连时会保存您所做的变更。尝试重连 标题 1 已保存 Bin Song B 要发布此内容请选择键盘上的 ⌘Enter。 发布 关闭 Rust技术空间 … 跨平台使用调研 iOS使用Rust调研 添加表情符号 添加标题图像 添加状态 一、iOS 项目接入 Rust Library 约定 iOS 项目目录 DemoApp Rust Librarydemo-library-ffi 1.1、Rust Library 将 Rust Library 代码 Clone 到 iOS 项目根目录下: DemoApp/demo-library-ffi 修改 DemoApp/rust-library/Cargo.toml将 Rust Library 修改为静态库 [lib] crate-type [“staticlib”] 在 DemoApp 目录下创建一个新的顶层 Cargo.toml 文件 [workspace] members [ “demo-library-ffi” ] 现在可以直接使用 cargo build 来生成 rust 静态库了 DemoApp/target/debug/demo-library-ffi.a 1.2、iOS Project 1.2.1 打开 Xcode target configuration → Build Phases → Link Binary with Libraries 选项卡选择 Add files将前面生成的 DemoApp/target/debug/demo-library-ffi.a 文件添加进去 是的这个不是最终我们需要的正确静态库文件因为它只有当前打包机器的架构不要紧我们会在下面步骤中修复它 1.2.2 用文本编辑器打开 project.pbxproj搜索并替换 Debug 和 Release 两处 LIBRARY_SEARCH_PATHS LIBRARY_SEARCH_PATHS ( “ ( i n h e r i t e d ) , (inherited), (inherited),(PROJECT_DIR)/target/debug”, ); Debug 替换为 “LIBRARY_SEARCH_PATHS[sdkiphoneos*][archarm64]” “ ( P R O J E C T D I R ) / t a r g e t / a a r c h 64 − a p p l e − i o s / d e b u g ; L I B R A R Y S E A R C H P A T H S [ s d k i p h o n e s i m u l a t o r ∗ ] [ a r c h a r m 64 ] (PROJECT_DIR)/target/aarch64-apple-ios/debug; LIBRARY_SEARCH_PATHS[sdkiphonesimulator*][archarm64] (PROJECTD​IR)/target/aarch64−apple−ios/debug;LIBRARYS​EARCHP​ATHS[sdkiphonesimulator∗][archarm64](PROJECT_DIR)/target/aarch64-apple-ios-sim/debug”; “LIBRARY_SEARCH_PATHS[sdkiphonesimulator*][archx86_64]” “ ( P R O J E C T D I R ) / t a r g e t / x 8 6 6 4 − a p p l e − i o s / d e b u g ; R e l e a s e 替换为 L I B R A R Y S E A R C H P A T H S [ s d k i p h o n e o s ∗ ] [ a r c h a r m 64 ] (PROJECT_DIR)/target/x86_64-apple-ios/debug; Release 替换为 LIBRARY_SEARCH_PATHS[sdkiphoneos*][archarm64] (PROJECTD​IR)/target/x866​4−apple−ios/debug;Release替换为LIBRARYS​EARCHP​ATHS[sdkiphoneos∗][archarm64](PROJECT_DIR)/target/aarch64-apple-ios/release”; “LIBRARY_SEARCH_PATHS[sdkiphonesimulator*][archarm64]” “ ( P R O J E C T D I R ) / t a r g e t / a a r c h 64 − a p p l e − i o s − s i m / r e l e a s e ; L I B R A R Y S E A R C H P A T H S [ s d k i p h o n e s i m u l a t o r ∗ ] [ a r c h x 8 6 6 4 ] (PROJECT_DIR)/target/aarch64-apple-ios-sim/release; LIBRARY_SEARCH_PATHS[sdkiphonesimulator*][archx86_64] (PROJECTD​IR)/target/aarch64−apple−ios−sim/release;LIBRARYS​EARCHP​ATHS[sdkiphonesimulator∗][archx866​4](PROJECT_DIR)/target/x86_64-apple-ios/release”; 1.2.3 再次打开 Build Phases 选项卡添加一个 Script并移动到 Compile Sources 上方可以命名为 Build Rust library bash ${PROJECT_DIR}/bin/compile-rust-lib.sh demo-library-ffi $RUSTBUILDCONF 第二个参数 RUSTBUILDCONF是传递给脚本的环境变量我们先定义它们 打开 Build Settings 选项卡点击 添加 User-Defined Setting为其命名 RUSTBUILDCONF 并根据构建变量选择一个值Debug 中填写 DEBUGRelease 中填写 RELEASE。 1.2.4 构建脚本 bin/compile-rust-lib.sh #!/usr/bin/env bash if [ “$#” -ne 2 ] then echo “Usage (note: only call inside xcode!):” echo “compile-rust-lib.sh FFI_TARGET ” exit 1 fi what to pass to cargo build -p, e.g. rust_lib_ffi FFI_TARGET$1 RUSTBUILDCONF from our xcconfigs RUSTBUILDCONF$2 RELFLAG if [[ “$RUSTBUILDCONF” ! “DEBUG” ]]; then RELFLAG–release fi set -euvx if [[ -n “${DEVELOPER_SDK_DIR:-}” ]]; then Assume we’re in Xcode, which means we’re probably cross-compiling. In this case, we need to add an extra library search path for build scripts and proc-macros, which run on the host instead of the target. (macOS Big Sur does not have linkable libraries in /usr/lib/.) export LIBRARY_PATH“ D E V E L O P E R S D K D I R / M a c O S X . s d k / u s r / l i b : {DEVELOPER_SDK_DIR}/MacOSX.sdk/usr/lib: DEVELOPERS​DKD​IR/MacOSX.sdk/usr/lib:{LIBRARY_PATH:-}” fi IS_SIMULATOR0 if [ “${LLVM_TARGET_TRIPLE_SUFFIX-}” “-simulator” ]; then IS_SIMULATOR1 fi for arch in A R C H S ; d o c a s e ARCHS; do case ARCHS;docasearch in x86_64) if [ $IS_SIMULATOR -eq 0 ]; then echo “Building for x86_64, but not a simulator build. What’s going on?” 2 exit 2 fi # Intel iOS simulatorexport CFLAGS_x86_64_apple_ios-target x86_64-apple-ios$HOME/.cargo/bin/cargo build -p $FFI_TARGET --lib $RELFLAG --target x86_64-apple-ios;;arm64)if [ $IS_SIMULATOR -eq 0 ]; then# Hardware iOS targets$HOME/.cargo/bin/cargo build -p $FFI_TARGET --lib $RELFLAG --target aarch64-apple-ioselse$HOME/.cargo/bin/cargo build -p $FFI_TARGET --lib $RELFLAG --target aarch64-apple-ios-simfiesac done 二、问题调研 Rust访问网络是否需要原生语言的干预需支持协议如gRPC/RESTful/WebSocket/UDP Rust 可以直接访问网络并不需要原生语言的干预Rust与原生语言的协作方式FFI/JNI or 其他 FFI cbindgen rsbind如何接收Rust发起的回调 使用函数指针可以参考这个人的代码​https://github.com/thombles/dw2019rust/blob/master/modules/07%20-%20Swift%20callbacks.md 或者使用 rsbindRust是否可以直接访问本地图片/文件/沙箱文件 ​https://docs.rs/cacao/latest/cacao/index.htmlRust是否可以直接访问本地数据库本地支持哪些常用数据库并且Rust有相应的封装 可以直接使用 sqlite如果要用 CoreData需要通过 FFI构建时各平台的构建步骤以及命令 参考 1.2.4 或者使用 rsbindAndroid/iOS端异常调用栈的分析方法是否有工具/框架可以配合打包后包大小的变化 1.网络 方案1: reqwest, 关闭bitcode的情况下包增加7.6MB 2.数据库 方案1:rusqlite, 关闭bitcode的情况下包增加3.6MB
http://www.hkea.cn/news/14256839/

相关文章:

  • wordpress软件站主题兰州网站建设专家
  • 西宁公司网站设计线上营销方法有哪些
  • 深圳知名网站建设平台dedecms5.7装饰公司网站模板
  • 网站建设能赚多少钱网站内容建设和管理
  • 网站建设投标文件如何网推
  • 重庆网站建设公司招聘前端直播网站怎么做
  • 陕西榆林市信息网站建设公司兰州 网站建设公司
  • 如果查询网站内页的收录情况石家庄seo管理
  • 申请网站建设经费玉泉路网站建设
  • 网站开发发展存在的问题新余 网站建设
  • 网站开发与托管协议合肥有什么好的网站建设公司
  • h5网站开发软件有名vi设计公司
  • 制作网站怎么制作网页无法访问但是有网什么原因
  • 网站建设主机耗电量淘宝网页版手机登录
  • 净水机企业网站源码东山县建设银行网站
  • 有没有做生鲜配送的网站骨科医院网站模板
  • 保定门户网站昆明网站建设手机版
  • 网站建设工资郑州一个县城广告公司利润
  • 企业网站开发公司管理咨询人员的基本素质
  • 怎样推广自己的商城为什么打开网址都是seo综合查询
  • 做食品那些网站好衡水哪里做网站
  • 湖南营销型网站建设公司如何创建软件app
  • 坪山网站建设代理商高校二级网站建设方案
  • 做建材的哪些网站凡科可以做淘客网站吗
  • 网站平台由什么搭建seo流量排行榜神器
  • 2017网站设计尺寸东莞市阳光网
  • 专门做spa的网站班级优化大师网页版登录
  • 网站宽度980 在ipad上 左对齐了外汇网站建设
  • 自建手机网站永嘉县住房建设局网站
  • 网站建设分期收费纸箱 技术支持 东莞网站建设