teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

回答が正しくないことを追記

2016/08/14 06:26

投稿

退会済みユーザー
answer CHANGED
@@ -6,4 +6,26 @@
6
6
  [参照ブログ](https://blog.xamarin.com/build-and-debug-c-libraries-in-xamarin-android-apps-with-visual-studio-2015/)
7
7
 
8
8
  どうしてもdll.dllにしたいのなら、
9
- [dllmap](http://www.mono-project.com/docs/advanced/pinvoke/dllmap/)を使えばいけると思います。当方Xamarin.Studioでは確認していますが、VSでは未確認です。
9
+ [dllmap](http://www.mono-project.com/docs/advanced/pinvoke/dllmap/)を使えばいけると思います。当方Xamarin.Studioでは確認していますが、VSでは未確認です。
10
+
11
+ ---
12
+ **追記**
13
+ 上記は回答として正しくありません。不適切な回答をしてすみませんでした。
14
+ 当方が質問を質問者がこの[サンプル](https://developer.xamarin.com/samples/monodroid/SanAngeles_NDK/)などのVisual Studio2015 でC++ による Android NDKを使ったDynamic Shared LibraryをXamarin.Androidのプロジェクトから参照する方法を確かめた上での質問と勝手に思い込んで回答してしまいました。
15
+
16
+ この[サンプル](https://developer.xamarin.com/samples/monodroid/SanAngeles_NDK/)を確認すれば、問題点は理解できると思いますので、まずサンプルを確認してください。
17
+
18
+ Xamarin.AndroidでC++なものを利用する場合、
19
+ 歴史的、基本的([サンプル](https://developer.xamarin.com/samples/monodroid/SanAngeles_NDK/)の2) Pre-compiled (SanAngeles_NDK))には、
20
+ - AndroidにおいてC++のコードをライブラリとして使用するにはNDKを使う。
21
+ - ビルドしてできたlibsフォルダ以下を、プロジェクトに追加する
22
+ - C#コードからDllImport属性を使ってコールする。
23
+
24
+ ですが、
25
+
26
+ Visual Studioにおいて([サンプル](https://developer.xamarin.com/samples/monodroid/SanAngeles_NDK/)の1) C++ for Visual Studio 2015 (SanAngeles_NativeDebug))は、
27
+ 0. Visual Studio2015 で C++ による Android NDK 開発ができる
28
+ 1. 1.のDynamic Shared LibraryをXamarin.Androidのプロジェクトから参照する
29
+ 2. C#コードからDllImport属性を使ってコールする。
30
+
31
+ こともできるようです(当方Xamarin.Studioなので未確認)。