在进入生态建设前,我们先明确两个关键概念,帮助不同阶段的开发者快速理解核心逻辑:
三方库(Third-Party Library)是由非操作系统官方的个人、团队或企业开发的可复用代码组件 / 工具集合,涵盖功能从基础的 “网络请求、数据解析” 到复杂的 “音视频编解码、AI 人脸识别” 等。例如常见的 Java JSON 解析库 Gson、C++ 音视频处理库 FFmpeg,均属于三方库范畴。
对于鸿蒙生态而言,三方库是连接 “开发者需求” 与 “高效开发” 的关键桥梁 —— 开发者无需重复造轮子,直接集成适配后的三方库,即可快速实现复杂功能。
鸿蒙三方库适配专区,是面向全球 OpenHarmony 开发者打造的一站式资源与协作平台,核心目标是打通 “三方库适配 - 资源整合 - 开发者协作” 的全链路,推动生态从 “单点探索” 走向 “规模化繁荣”。
专区整合了通用三方库适配鸿蒙所需的所有关键资源,开发者无需跨平台查找,即可完成从 “适配学习” 到 “问题解决” 的全流程:
当前专区处于生态共建关键阶段,为帮助开发者快速上手,我们梳理了核心贡献流程与关键适配指导,所有操作均有规范文档支撑:
以下文档覆盖 “新建三方库”“移植现有库”“发布至中心仓” 的完整流程,开发者可按需查阅:
针对适配过程中的高频问题(如技术栈分类、跨系统编译),专区提供专项指导文档:
鸿蒙生态的繁荣,离不开通用三方库的 “补位”—— 当前生态仍面临两大核心挑战,而共建专区正是解决这些问题的关键路径。
通过专区共建,我们将构建 “资源共享 - 协作开发 - 生态壮大” 的闭环:
为补全鸿蒙跨平台开发工具链、覆盖更多高频场景,我们从 “编译调试、数据库、开发框架、音视频、AI” 等领域,筛选出200 款高频三方库,其中 125 款为当前重点适配任务(以下为部分清单,完整清单可在GitCode 专区[12]获取)。
序号 | url | 库名 | 语言 | 负责人 |
|---|---|---|---|---|
1 | https://github.com/mutouyun/cpp-ipc | cpp-ipc | C++ | |
2 | https://github.com/oneman/libflac | libflac | C | |
3 | https://github.com/Libsharp/libsharp | libsharp | C | |
4 | https://github.com/lcompilers/libasr | libasr | C++ | |
5 | https://github.com/getnamo/7zip-cpp | 7zip-cpp | C++ | |
6 | https://github.com/BelledonneCommunications/bcg729 | bcg729 | C | |
7 | https://github.com/tukaani-project/xz | xz | C | |
8 | https://github.com/Nine11Studio/libpngquant-Android | libpngquant-Android | C | |
9 | https://github.com/michaelni/libpostproc | libpostproc | C | |
10 | https://github.com/repstosw/libmsmart | libmsmart | C++ | |
11 | https://github.com/obilaniu/libpfc | libpfc | C | |
12 | https://github.com/seetafaceengine/SeetaFace2 | SeetaFace2 | C++ | |
13 | https://github.com/sigrokproject/libserialport | libserialport | C | |
14 | https://github.com/rlan/libsp | libsp | C++ | |
15 | https://github.com/Parrot-Developers/librtp | librtp | C | |
16 | https://github.com/kftsehk/VideoPicker | VideoPicker | Java | |
17 | https://github.com/ebiggers/libdeflate | libdeflate | C | |
18 | https://github.com/felipensp/libvm | libvm | C | |
19 | https://github.com/alphacep/vosk-api | vosk-api | C++ | |
20 | https://github.com/stac47/libuseless | libuseless | C++ | |
21 | https://github.com/ropensci/antiword | antiword | C | |
22 | https://github.com/kamyar-nemati/libecg | libecg | C++ | |
23 | https://github.com/ComputationalRadiationPhysics/libSplash | libSplash | C++ | |
24 | https://github.com/sethyuan/asyncflow | asyncflow | JavaScript | |
25 | https://github.com/google/gson | gson | Java | |
26 | https://github.com/javadocmd/simplelatlng | simplelatlng | Java | |
27 | https://github.com/bergzand/libcose | libcose | C | |
28 | https://github.com/marco-o/LIBICCPP | LIBICCPP | C++ | |
29 | https://github.com/LiangliangNan/ImageDiff | ImageDiff | C++ | |
30 | https://github.com/uNetworking/libvc | libvc | C++ | |
31 | https://github.com/NULL703/libformula | libformula | C | |
32 | https://github.com/vlm/asn1c | asn1c | C | |
33 | https://github.com/cnr-isti-vclab/meshlab | meshlab | C++ | |
34 | https://github.com/hyperrealm/libconfig | libconfig | C | |
35 | https://github.com/LivelyLogic/butterfly | butterfly | C | |
36 | https://github.com/mitmproxy/mitmproxy | mitmproxy | Python | |
37 | https://github.com/rainyl/dartcv | dartcv | C++ | |
38 | https://github.com/k2-fsa/sherpa-onnx | sherpa-onnx | C++ | |
39 | https://github.com/mattdesl/gifenc | gifenc | JavaScript | |
40 | https://github.com/Akaaba/libmp4 | libmp4 | C | |
41 | https://github.com/Unam3dd/libaes | libaes | C | |
42 | https://github.com/craigsapp/midifile | midifile | C++ | |
43 | https://github.com/daysv/LetvCloud | LetvCloud | JavaScript | |
44 | https://github.com/skyscreamer/JSONassert | JSONassert | Java | |
45 | https://github.com/zurl/libjs | libjs | C++ | |
46 | https://github.com/google/diff-match-patch | diff-match-patch | Python | |
47 | https://github.com/troglobit/editline | editline | C | |
48 | https://github.com/MathisRosenhauer/libaec | libaec | C | |
49 | https://github.com/evercomer/rudp | rudp | C | |
50 | https://github.com/donuts-are-good/libkeva | libkeva | Go | |
51 | https://github.com/xiph/speexdsp | speexdsp | C | |
52 | https://github.com/bhumijgupta/huffman-compression-library | huffman-compression-library | C++ | |
53 | https://github.com/Bodmer/JPEGDecoder | JPEGDecoder | C | |
54 | https://github.com/NATTools/stunlib | stunlib | C | |
55 | https://github.com/codebutler/android-websockets | android-websockets | Java | |
56 | https://github.com/frankiesardo/LinearListView | LinearListView | Java | |
57 | https://github.com/bitauth/libauth | libauth | TypeScript | |
58 | https://github.com/michaelrsweet/mxml | mxml | C | |
59 | https://github.com/dmytrodanylyk/circular-progress-button | circular-progress-button | Java | |
60 | https://github.com/bingoogolapple/BGASwipeItemLayout-Android | BGASwipeItemLayout-Android | Java | |
61 | https://github.com/pytorch/cpuinfo | cpuinfo | C | |
62 | https://github.com/P-H-C/phc-winner-argon2 | phc-winner-argon2 | C | |
63 | https://github.com/dmytrodanylyk/android-process-button | android-process-button | Java | |
64 | https://github.com/MichaelEvans/ColorArt | ColorArt | Java | |
65 | https://github.com/k2-fsa/sherpa-ncnn | sherpa-ncnn | C++ | |
66 | https://github.com/eProsima/Fast-CDR | Fast-CDR | C++ | |
67 | https://github.com/Julian-Nash/dictparse | dictparse | Python | |
68 | https://github.com/ant-media/LibRtmp-Client-for-Android | LibRtmp-Client-for-Android | C | |
69 | https://github.com/ShiqiYu/libfacedetection | libfacedetection | C++ | |
70 | https://github.com/canyinghao/CanRefresh | CanRefresh | Java | |
71 | https://github.com/florent37/ExpectAnim | ExpectAnim | Java | |
72 | https://github.com/ozodrukh/CircularReveal | CircularReveal | Java | |
73 | https://github.com/iammert/MaterialIntroView | MaterialIntroView | Java | |
74 | https://github.com/chihane/JDAddressSelector | JDAddressSelector | Java | |
75 | https://github.com/lingochamp/MagicProgressWidget | MagicProgressWidget | Java | |
76 | https://github.com/7heaven/SHSegmentControl | SHSegmentControl | Java | |
77 | https://github.com/kornelski/pngquant | pngquant | C | |
78 | https://github.com/saket/cascade | cascade | Kotlin | |
79 | https://github.com/ToxicBakery/ViewPagerTransforms | ViewPagerTransforms | Kotlin | |
80 | https://github.com/qiujuer/Genius-Android | Genius-Android | Java | |
81 | https://github.com/kikoso/android-stackblur | android-stackblur | Java | |
82 | https://github.com/Ashok-Varma/BottomNavigation | BottomNavigation | Java | |
83 | https://github.com/yokeyword/IndexableRecyclerView | IndexableRecyclerView | Java | |
84 | https://github.com/robinhood/ticker | ticker | Java | |
85 | https://github.com/Toinane/colorpicker | colorpicker | JavaScript | |
86 | https://github.com/plattysoft/Leonids | Leonids | Java | |
87 | https://github.com/jtheoof/swappy | swappy | C | |
88 | https://github.com/iwgang/SimplifySpan | SimplifySpan | Java | |
89 | https://github.com/quiet/quiet | quiet | C | |
90 | https://github.com/r0adkll/Slidr | Slidr | Java | |
91 | https://github.com/skyfishjy/android-ripple-background | android-ripple-background | Java | |
92 | https://github.com/stump/libsmf | libsmf | C | |
93 | https://github.com/noties/Scrollable | Scrollable | Java | |
94 | https://github.com/AnderWeb/discreteSeekBar | discreteSeekBar | Java | |
95 | https://github.com/kizitonwose/Calendar | Calendar | Java | |
96 | https://github.com/daimajia/AndroidImageSlider | AndroidImageSlider | Java | |
97 | https://github.com/TimeShining/Android-Dev-Tools | Android-Dev-Tools | Java | |
98 | https://github.com/hannesa2/panoramagl | panoramagl | Java | |
99 | https://github.com/patrykandpatrick/vico | vico | Kotlin | |
100 | https://github.com/mikepenz/AboutLibraries | AboutLibraries | Kotlin | |
101 | https://github.com/SimonVT/android-numberpicker | android-numberpicker | Java | |
102 | https://github.com/deano2390/MaterialShowcaseView | MaterialShowcaseView | Java | |
103 | https://github.com/oguzbilgener/CircularFloatingActionMenu | CircularFloatingActionMenu | Java | |
104 | https://github.com/bhumijgupta/huffman-compression-library | huffman-compression-library | C++ | |
105 | https://github.com/vekexasia/android-form-edittext | android-form-edittext | Java | |
106 | https://github.com/henrytao-me/smooth-app-bar-layout | smooth-app-bar-layout | Java | |
107 | https://github.com/grpc/grpc/blob/master/third_party/address_sorting/include/address_sorting/address_sorting.h | address_sorting.h | C | |
108 | https://github.com/ogaclejapan/ArcLayout | ArcLayout | Java | |
109 | https://github.com/boostorg/regex | regex | C++ | |
110 | https://github.com/evercomer/rudp | rudp | C | |
111 | http://github.com/google/emoji-segmenter | emoji-segmenter | C | |
112 | https://github.com/soaic/LibjpegCompress | LibjpegCompress | Java | |
113 | https://github.com/woozzu/IndexableListView | IndexableListView | Java | |
114 | https://github.com/apache/sanselan | sanselan | Java | |
115 | https://github.com/shamanland/floating-action-button | floating-action-button | Java | |
116 | https://github.com/kohler/gifsicle | gifsicle | C | |
117 | https://github.com/code-troopers/android-betterpickers | android-betterpickers | Java | |
118 | https://github.com/Almeros/android-gesture-detectors | android-gesture-detectors | Java | |
119 | https://github.com/openaphid/android-flip | android-flip | Java | |
120 | https://github.com/davidditao/DDlog | DDlog | C++ | |
121 | https://github.com/team-charls/charls | charls | C++ | |
122 | https://github.com/nemtrif/utfcpp | utfcpp | C++ | |
123 | https://github.com/komrad36/CRC | CRC | C++ | |
124 | https://github.com/fffaraz/cppDES | cppDES | C++ | |
125 | https://github.com/twotoasters/JazzyListView | JazzyListView | Java |
需要提交至:GitCode - 全球开发者的开源社区,开源代码托管平台[13]
无论您是资深 C/C++/Java 开发者(熟悉跨端适配与插件开发),还是鸿蒙技术爱好者(想探索双技术栈协同),只要对 “三方库适配” 感兴趣,都能在生态共建中找到定位!
所有贡献者将获得全网可见的认可,沉淀个人开源履历:
从单人探索到全球协同,从功能补位到生态繁荣 —— 鸿蒙三方库适配专区不仅是 “资源整合平台”,更是 “开发者成长与价值落地的舞台”。
参考资料
[1]
创建新的三方库: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/创建三方库工程指导.md
[2]
移植 JS 三方库: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/adapter-guide/js移植适配指导.md
[3]
移植 C/C++ 三方库: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/adapter-guide/c_c%2B%2B移植适配指导.md
[4]
OpenHarmony 三方库发布标准: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/TPC发布标准.md
[5]
发布 OpenHarmony 三方库中心仓: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/ohpm发布指导.md
[6]
贡献到 OpenHarmony-TPC: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/TPC共建指导.md
[7]
开源三方库的技术栈分类: https://gitcode.com/openharmony-tpc/docs/blob/master/contribute/开源三方库的技术栈分类.md
[8]
开源三方库 HarmonyOS NEXT 适配指导: https://developer.huawei.com/consumer/cn/blog/topic/03176727089384095
[9]
开源三方库 HarmonyOS NEXT 游戏适配指导: https://developer.huawei.com/consumer/cn/doc/games-guides/games-universal-adapt-third-library-0000002290574309
[10]
macOS 上使用 OpenHarmony SDK 交叉编译指导: https://gitcode.com/openharmony-sig/tpc_c_cplusplus/blob/master/docs/adapter_mac.md
[11]
Windows 上使用 OpenHarmony SDK 交叉编译指导: https://gitcode.com/openharmony-sig/tpc_c_cplusplus/blob/master/docs/adapter_windows.md
[12]
GitCode 专区: https://gitcode.com/oh-tpc
[13]
GitCode - 全球开发者的开源社区,开源代码托管平台: https://gitcode.com/oh-tpc
[14]
GitCode 专区留言: https://gitcode.com/oh-tpc