No commit activity in last 3 years
No release in over 3 years
iOS parse linkmap.txt to ruby Hash
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

 Project Readme

analyze_ios_linkmap plugin

fastlane Plugin Badge

Getting Started

This project is a fastlane plugin. To get started with fastlane-plugin-analyze_ios_linkmap, add it to your project by running:

fastlane add_plugin analyze_ios_linkmap

About analyze_ios_linkmap

Note to author: Add a more detailed description about this plugin here. If your plugin contains multiple actions, make sure to mention them here.

Example

Check out the example Fastfile to see how to use this plugin. Try it by cloning the repo, running fastlane install_plugins and bundle exec fastlane test.

Eg1: 默认解析一个 linkmap.txt

path = '/Users/xiongzenghui/Desktop/Demo-LinkMap-normal-arm64.txt'
Fastlane::Actions::AnalyzeIosLinkmapAction.run( file_path: path )
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_HASH]
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_JSON]

Eg2: 显示所有的 object file

path = '/Users/xiongzenghui/Desktop/Demo-LinkMap-normal-arm64.txt'
Fastlane::Actions::AnalyzeIosLinkmapAction.run(
  file_path: path,
  all_objects: true
)
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_HASH]
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_JSON]

Eg3: 显示所有的 symbol

path = '/Users/xiongzenghui/Desktop/Demo-LinkMap-normal-arm64.txt'
Fastlane::Actions::AnalyzeIosLinkmapAction.run(
  file_path: path,
  all_objects: true,
  all_symbols: true
)
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_HASH]
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_JSON]

Eg4: 根据 podspec name 进行合并

path = '/Users/xiongzenghui/Desktop/Demo-LinkMap-normal-arm64.txt'
Fastlane::Actions::AnalyzeIosLinkmapAction.run(
  file_path: path,
  all_objects: false,
  all_symbols: false,
  merge_by_pod: true
)
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_HASH]
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_JSON]
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_MERGE_HASH]
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_PARSED_MERGE_JSON]

Eg5: 搜索一个 symbol 所属的 library

path = '/Users/xiongzenghui/Desktop/Demo-LinkMap-normal-arm64.txt'
Fastlane::Actions::AnalyzeIosLinkmapAction.run(
  file_path: path,
  search_symbol: 'TDATEvo'
)
pp Fastlane::Actions.lane_context[Fastlane::Actions::ShatedValues::ANALYZE_IOS_LINKMAP_SEARCH_SYMBOL]

Run tests for this plugin

To run both the tests, and code style validation, run

rake

To automatically fix many of the styling issues, use

rubocop -a

Issues and Feedback

For any other issues and feedback about this plugin, please submit it to this repository.

Troubleshooting

If you have trouble using plugins, check out the Plugins Troubleshooting guide.

Using fastlane Plugins

For more information about how the fastlane plugin system works, check out the Plugins documentation.

About fastlane

fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out fastlane.tools.