1.開発環境
・JAVA環境 jdk1.8
• アンドロイドスタジオ
ダウンロードアドレス:Android Studio公式サイト:https ://developer.android.google.cn/studio/index.html
• アプリのオフライン SDK ダウンロード
Android プラットフォーム SDK バージョン 2.9.8+ をダウンロードしてください。
https://nativesupport.dcloud.net.cn/AppDocs/download/android.html#
• HBuilderX のダウンロード
公式ダウンロードリンク: https://www.dcloud.io/hbuilderx.html
2. Java コードは、uni-app によって認識可能な aar ファイルにパッケージ化されます。
ダウンロードしたアプリ オフライン SDK をダウンロードして解凍します。
SDK の UniPlugin-Hello-AS プロジェクトを Android Studio にインポートします。
ここにプラグイン ライブラリを作成し、mylibrary という名前を付けます
uniplugin_module のすべての build.gradle コンテンツをコピーし、mylibrary の build.gradle コンテンツを上書きします
図に示すように、mylibrary ファイルの下の \src\main\AndroidManifest.xml を変更します。
androidTest を削除し、mylibrary パス src の下でテストします (理由は、関連する依存関係が build.gradle に導入されておらず、エラーが報告され、依存関係を自分で追加することもできるためです)。
mylibrary パス src\main\java に Java コードを記述します。
コードノート:
1). クラスは UniModule を継承する必要があります
2). 注釈 @UniJSMethod(uiThread = false) をメソッドに追加します
3). メソッドは public メソッドでなければなりません
.JSONObject として返す
对于代码中涉及到com.sun.crypto.provider.SunJCE()报错问题,可在C:\Program Files\Java\jdk1.8.0_72\jre\lib\ext拷贝sunjce_provider.jar至libs中,并通过右键-add as library 引用即可
打包成aar
选中mylibrary,通过build-makemodule "*.mylibrary" 打包
打包完成后,如下图位置即可找到打包成功的aar文件
三、 uni-app调用原生插件
Hbuilder X 打开uni-app项目
官方说明:https://nativesupport.dcloud.net.cn/NativePlugin/
在nativeplugins下创建如下图结构的数据
按官方要求编写package.json
manifest.json 中添加本地插件配置
打包自定义基座:运行-运行到手机或模拟器-制作自定义调试基座 。
测试运行
运行-运行到手机或模拟器-运行到Android app基座,选择自定义基座
前端调用:
const MyTest=uni.requireNativePlugin('mylibrary-debug-MyTest');
MyTest.getTestData();