Visual Studio 2017-将C ++共享库与Android中的C ++库链接

时间:2018-06-21 05:05:32

标签: android c++ visual-studio

我在Visual Studio Community 2017(版本为2018年6月18日-15.7.4)中有一个Android项目,其中包含两个C ++库,其中包括它们相互之间的作用。

项目结构如下:

  • Project1:Android
  • Project2:lib1(C ++)
  • Project3:-> lib1.1(lib1中引用的C ++)
  • Project4:lib2(在lib1中引用了C ++)
  • Project5:-> lib2.1(lib2中引用的C ++)

  • lib1,lib2属于Visual Studio对象类型:component,可以在 ngAfterViewChecked() { if (this.contentForm.value.type == 'Html') { let editor = this.ckEditor.instance; editor.config.height = 200; // editor.config.toolbar = [ // // { name: 'document', items: ['Source', 'Templates'] }, // { name: 'colors', items: ['TextColor', 'BGColor'] }, '/', // { name: 'insert', items: ['Image'] }, // { name: 'styles', items: ['Styles', 'Format', 'Font', 'FontSize'] }, // // { name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'CopyFormatting', 'RemoveFormat'] } // ] editor.config.toolbar =[ ['Source', '-', 'Bold', 'Italic'] ]; editor.config.removeButtons = 'Templates,Find,Replace,Scayt,SelectAll,Form,Radio'; editor.config.removePlugins = 'elementspath,save,font,Undo,Redo'; } } -> Dynamic Shared Library (Android)-> Visual C++
  • 中找到
  • lib1.1,lib2.1属于Visual Studio对象类型:Cross Plattform,可以在Android-> Shared Items Project
  • 中找到

Visual Studio 2017 New Project dialog

在Android项目中,我将其加载为

Visual C++

只要我仅使用lib1,编译后的App就可以正常工作。一旦我在lib1中引用了lib2并使用了lib2.1的代码,就在启动时在该行发生以下错误:

General

Android的Logcat中显示以下错误:

static
{
    System.loadLibrary("lib2");
    System.loadLibrary("lib1");
}

似乎Visual Studio将错误的路径编译到应用程序中。为什么要在我的开发机器上搜索lib1而不是在电话本身上搜索。

任何提示出什么事了吗

0 个答案:

没有答案