iOS

add child vc

https://www.swiftbysundell.com/basics/child-view-controllers/

国际化导出:

xcodebuild -exportLocalizations -workspace BinaryFlute.xcworkspace \
-localizationPath ./Localizations \
-exportLanguage zh-hans \
-exportLanguage zh-HK \
-exportLanguage zh-hant \
-exportLanguage en  %

InjectionIII 配置

#if DEBUG
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle")?.load()
//for tvOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection.bundle")?.load()
//Or for macOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection.bundle")?.load()
#endif

xed 打开iOS工程

命令行中 swift package 拉依赖 (可以配合proxy 使用)

xcodebuild -resolvePackageDependencies -scmProvider system

符号断点

-[UINavigationController pushViewController:animated:]

brew aliyun mirror

    # 替换brew.git:
    cd "$(brew --repo)"
    git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git
    # 替换homebrew-core.git:
    cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
    git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git
    # 应用生效
    brew update
    # 替换homebrew-bottles:
    echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
    source ~/.zshrc

采用 cocoapods-binary ,让工程二进制化

Gemfile:
source 'https://rubygems.org'
gem 'cocoapods','1.11.2'
gem 'cocoapods-binary', '~> 0.4.4'

Podfile:
plugin 'cocoapods-binary'
use_frameworks!(:linkage => :static)

pod 'AFNetworking',"3.0",:binary => true
pod 'SanyServiceDisclose', :path => './SanyServiceDisclose' 自己本地的lib  binary => true 不起作用 

对于baidu 地图等 header module 不规范的lib 可以 在工程 的依赖了 baidu sdk 的target 中 配置
Allow No-modular includes in Framework Modules  === YES  

或者不直接在我们 的头文件中再次暴露 baidu sdk 的头文件 

执行 
bundle exec pod install 就可以了预编译 依赖库了

mPaas 集成

iOS mPaas 集成  :
pod mpaas init
pod repo add mPaaS_iOS_specs https://code.aliyun.com/mpaas-public/podspecs.git  (这个官方文档上没写) 
pod mpaas update 10.1.68

Dsbridge 的用法注意事项:

JS
dsBridge.hasNativeMethod('goApp', 'asyn') 

检查 native 
- (void)goApp:(NSString *)p :(JSCallback) completionHandler  
是否存在

JS 
 dsBridge.call('goApp', xxx);

调用的 native 
- (void)goApp:(NSString *)p


前端可以改成 
 dsBridge.call('goApp', xxx,(a)=>{});
or
dsBridge.hasNativeMethod('goApp')
版权声明:本文为pencilCool原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/pencilCool/p/16157431.html