まぐらぼ

日々の雑記を書いています。

Android StudioでNDKの導入

(1) Android StudioC言語をビルドする
これはビルドは問題なかった。

nbps.hatenablog.com

ただ、公式マニュアル見たほうが情報新しいから、公式マニュアルを見た方がよさそう。英語も平易だし。
tools.android.com

(2) soを出力する
qiita.com

出力先は、(プロジェクト名称)\app\build\intermediates\binaries\debug\flavor1\lib\arm64-v8a(ABIが arm64-v8aの場合)

★公式サンプルのAndroidStudio版
https://github.com/googlesamples/android-ndk
これ使うと良い。

Unity用のAndroid PluginをAndroidStudioで作る

seesaawiki.jp

1. windows環境
1-a classes.jarについて

Unity5だと、「C:/Program Files/Unity/Editor/Data/PlaybackEngines/AndroidPlayer/Variations/mono/Release/Classes」の下にあった。他にDevelopment版もあり。

1-b android.jar

compile files('$(ANDROIDSDKのパス)/platforms/android-23/android.jar')

1-c 編集後

apply plugin: 'java'

sourceCompatibility = '1.8' // これJDKとの認識
jar.baseName = 'AndroidExamplePlugin' // .jarの名称
version = '1.0.0' // .jarのバージョン値

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])

compile files('$(UNITYのパス)/Editor/Data/PlaybackEngines/AndroidPlayer/Variations/mono/Release/Classes/classes.jar')

//! android-23はAPIの認識
compile files('$(ANDROIDSDKのパス)/platforms/android-23/android.jar')
}

これで..\gradlew jarは出来る。windowsの場合¥を使うとよさげ。

2. Unity
作成したAndroidExamplePlugin-1.0.0.jarをUnityプロジェクト(Project-Assets-Plugins-Android)へコピーする。

Androidで出力するとUNITYがエラーダイアログを返す。
Unable to convert classes into dex format. See the Console details.


UNEXPECTED TOP-LEVEL EXCEPTION:とかめっちゃ長いエラーが出てはる(;>_<;)
結局解決してない。

2016/03/26 追記 解決した。 PCに複数versionのJDKをインストールしてるとエラーになる可能性あり。

GYPの環境構築メモ

これを参考にする.
http://www.lifewithpython.com/2012/11/Python-package-setuptools-pip.html
http://qiita.com/skitaoka/items/390f23640ac3a9df64ee
[win10]
1. python 2.x系をインストール D:\SDK\python\python27
2. setuptools https://pypi.python.org/pypi/setuptools
 パス通っていないので手動で通す。D:\SDK\python\python27\Scripts
3. pip
easy_install pip

4. gyp のインストール
gitが使える事が前提
git clone https://chromium.googlesource.com/external/gyp

git clone https://chromium.googlesource.com/external/gyp
cd gyp
python setup.py install
gyp -h # 動作すれば OK

gpuview.exeが上手く動作しない場合

gpuview.exeが上手く動作しない場合のチェック項目メモ

1.管理者権限でプロンプト開いているか。

2.[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation]
"WmiInstrumentation"=dword:00000001

3. set TRACE_LOGGING_MEMORY=4096

インストール場所
C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\gpuview

★WEBAPIサービス

Amazon C# サンプル
http://pronama.azurewebsites.net/2014/05/23/csharp-amazon-product-advertising-api-rest-sample-code-modified/
http://blog.livedoor.jp/mgpn/archives/51822561.html

日本語マニュアル http://g-ecx.images-amazon.com/images/G/09/associates/paapi/dg/index.html

楽天証券
http://www2s.biglobe.ne.jp/~katsum/marketspeed/#rss_03

楽天市場
http://d.hatena.ne.jp/nagakura_eil/20080201/1201870427
動画:https://www.youtube.com/watch?v=G6TkVVn6jNw
◆ヤフー
http://biz-crew.com/archives/1297

ebay
C#/SDKがある。
https://go.developer.ebay.com/netsdk

NUnitの導入

xUnit.NETが設計は優れているとのこと。
とっつきやすさと普及度を考慮するとNUnitで良いと思われる。

テスト実行はGUIツールより。
テスト対象はDLL化すると良い。
テストコードもDLL化。*.nunitなくてもDLLをGUIから選択するとテストメソッド一覧をピックアップできる。

参考 (biac氏の記事)
http://codezine.jp/article/detail/6518
http://www.nunit.org/index.php?p=attributes&r=2.6.4
http://neue.cc/2011/03/03_308.html