NativeScript / NativeScript/nativescript-cli

Allow the use of native ios and android framework's solutions/projects rather than an pre-build .framework/.aar file

未关闭
#4,376 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

feature
主要语言
JavaScript
星标
1.1k
派生
204
平均合并
1 天 9 小时
30 天内合并 PR
8

描述

Is your feature request related to a problem? Please describe.
At the moment as a plugin developer I have to pre-build my native framework I have from iOS into an embedded .framework file and for Android into an .aar file and place those into the platforms directory of my plugin. I would like to be able to tell the NativeScript CLI where the actual Xcode/Android Studio projects if my plugin are located and have the CLI use them as "referenced projects" for the output that it created in the platforms folder of the {N} application. The idea is to be able to open that output into Xcode/Android Studio and if that output from the CLI is using a referenced of my native framework's solutions they will be included as "side" projects and I will be able to change my native code and use the IDE rebuild and start functionality (like a native iOS and Android development workflow)

Describe the solution you'd like
Currently the CLI creates the output in the the "platforms" directory (after tns build ios/android command) in such a way that it simply uses the pre-build .framework/.aar files from each node_modules {N} plugin into the build Xcode/Android Studio project of the {N} app. If the CLI can instruct the runtime to not simply use and look for .framework/.aar files but instead use an actual Xcode/Android Studio solution which builds those .framework/.aar files it will be possible to implement an functionality into the iOS and Android runtimes that will use those projects.

Describe alternatives you've considered
Currently the only way to streamline the development workflow of a plugin developer who creates a native iOS/Android library is to either:

  1. Build and manually move the product of the library to the "platforms" directory of his plugin
    or
  2. Use the newly created "nativescript-dev-debugging" plugin which provides workflows for such actions

The drawbacks from both approaches is that they require a full build if the {N} app after the library is replaced (--syncAllFiles).

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先跟踪 tns build ios/android 如何在 platforms 目录中创建应用输出,以及当前如何使用插件的 .framework.aar 文件。将该工作流与 nativescript-dev-debugging 进行比较;完成的标准是,可以引用插件提供的 Xcode 和 Android Studio 项目,将其作为附属项目包含进来,并通过原生 IDE 工作流重新构建。

由索引模型根据 Issue 内容生成。

评估

技术栈
android, ios, javascript
领域
cli, mobile
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。