How to include a native Android library (Plugin)
So, I need to include "android.os" in my project to use native vibrator class (to make the device vibrate for a given amount of time, Unity's own vibration method is too primitive). My searches always ends up on this page about building plugins. My programming skills are mediocre and I really couldn't comprehend this. It seems like a really complicated process for such a basic outcome. Can anyone explain how to do this in simple steps or is there an easier way. Or maybe someone already done this could share his files/codes etc. I am really lost here, help please.
Answer by hexagonius · Aug 24, 2015 at 04:31 PM
PluginsForAndroid says, that you should:
put your .so file under Assets->Plugins->Android
link it with this code in any C# script:
[DllImport ("PluginName")] private static extern float FooPluginFunction ();
Where PluginName without .so is the filename and everything after "private static extern" is equal to the method you want to bind.
Ok, now I copied "libandroid.so" file from the ndk folder to the "Assets/Plugins/Android". Then I wrote in my script:
[DllImport ("android")] private static extern void vibrate(long milliseconds);
It says not to include ".so" and "lib" in the import string. And I did so.
But now Unity is throwing DllNotFound exception. What am I doing wrong here?
hey @ExCx same problem for me here! I did exactly the same - placed under "Assets/Plugins/Android" and didn't include "lib" nor ".so", but unity is giving me DllNotFound exception! did you solve this?
Your answer
Follow this Question
Related Questions
Android Plugin - .aar file missing R$raw reference 0 Answers
Swift 3 Wrapper needs to embed unity in xcode 8 project 0 Answers
Is build.gradle take in account when building? 0 Answers
Environment reset after plugin import kill all static variables. 0 Answers
PLS recommend plugins for networking/sever which ONLY work for authentication + storing player info. 0 Answers