VS2015 - 引用 Android 项目中的 .so 文件
VS2015 - Referencing .so files in Android project
我有一个 Android 项目,由 UI 的 Java 层和包含大部分代码的应用程序核心的 C++ 层组成。
这两层是两个独立的 Visual Studio 2015 projects/solutions,"UI" 项目是 "Basic Application (Android, Gradle)" 项目,"Core" 项目是 "Dynamic Shared Library (Android)" 生成 .so
由 Java 在启动时加载。
我希望我的 "UI" 项目在打开 "UI" 项目时引用 "Core" 项目而不使 C++ 代码可访问。
到目前为止我的想法:
在 "UI" 项目中添加对 "Core" 项目的引用,这似乎是一种干净的方法,但也使 C++ 代码可访问,我不想成为可能。
不是在 "UI" 项目中创建对 "Core" 项目的引用,而只是 "referencing" [=35= 生成的 .so
]项目进入"UI"项目。但是我不知道该怎么做。而且因为不会有对"Core"项目的实际引用,编译"UI"项目不会自动重新编译"Core"项目,如果对它进行了修改,迫使我这样做手动。
有没有一种干净的方法来做我想做的事?谢谢。
不幸的是,只有当 cpp 项目在您的解决方案中时,您才能编译该项目。如果你想隐藏你的代码,你应该 link 你的 lib,但是如果你要对 cpp 代码进行更改,你将不得不单独重新编译它。
我用的是Android Studio,但是方法差别不大。如果我想隐藏我的 cpp 代码并只使用 libs(例如,我将它写在另一个 IDE 中)我制作从 AS 运行的脚本文件(在你的情况下,从 VS,可能构建事件)并构建我的 cpp 部分.
但我更频繁地将这两个部分构建在一起,并且仅在发布阶段我使用外部库隐藏我的 cpp 部分
我有一个 Android 项目,由 UI 的 Java 层和包含大部分代码的应用程序核心的 C++ 层组成。
这两层是两个独立的 Visual Studio 2015 projects/solutions,"UI" 项目是 "Basic Application (Android, Gradle)" 项目,"Core" 项目是 "Dynamic Shared Library (Android)" 生成 .so
由 Java 在启动时加载。
我希望我的 "UI" 项目在打开 "UI" 项目时引用 "Core" 项目而不使 C++ 代码可访问。
到目前为止我的想法:
在 "UI" 项目中添加对 "Core" 项目的引用,这似乎是一种干净的方法,但也使 C++ 代码可访问,我不想成为可能。
不是在 "UI" 项目中创建对 "Core" 项目的引用,而只是 "referencing" [=35= 生成的
.so
]项目进入"UI"项目。但是我不知道该怎么做。而且因为不会有对"Core"项目的实际引用,编译"UI"项目不会自动重新编译"Core"项目,如果对它进行了修改,迫使我这样做手动。
有没有一种干净的方法来做我想做的事?谢谢。
不幸的是,只有当 cpp 项目在您的解决方案中时,您才能编译该项目。如果你想隐藏你的代码,你应该 link 你的 lib,但是如果你要对 cpp 代码进行更改,你将不得不单独重新编译它。
我用的是Android Studio,但是方法差别不大。如果我想隐藏我的 cpp 代码并只使用 libs(例如,我将它写在另一个 IDE 中)我制作从 AS 运行的脚本文件(在你的情况下,从 VS,可能构建事件)并构建我的 cpp 部分.
但我更频繁地将这两个部分构建在一起,并且仅在发布阶段我使用外部库隐藏我的 cpp 部分