網站首頁 編程語言 正文
Android uniapp項目接入實例、uniapp混合開發踩坑手冊、uniapp Android與H5對接,uniapp第一個項目指南
作者:break妖 更新時間: 2022-05-12 編程語言1. h5開發工具選擇HBuilder X
官方下載地址 :HBuilderX-高效極客技巧
選擇App開發版
?下載完成后是壓縮包,直接解壓然后打開HBuilderX.exe可直接使用
2.使用HBuilderX新建項目
2.1 注冊帳號并使用該帳號登錄HBuilder
?2.2 新建項目,選擇 默認模版
?2.3 在index.vue中編寫調用代碼
{{title}}
?
2.4然后生成本地打包app資源備用
?
?
2.5 登錄:DCloud - HBuilder、HBuilderX、uni-app、uniapp、5+、5plus、mui、wap2app、流應用、HTML5、小程序開發、跨平臺App、多端框架
?會發現剛才HBuilder生成的項目也在開發者后臺自動生成了
?3. android開發工具選擇Android Studio
官方下載地址:Download Android Studio and SDK tools ?|? Android Developers
3.1 下載uniapp項目官網demo
下載地址:原生開發者支持
?3.2.uniapp官方demo下載之后解壓
有三個demo,大致類似,選擇UniPlugin-Hello-AS為例,用Android Studio打開UniPlugin-Hello-AS項目。
?3.3 創建自己的module
目錄層級與uniplugin_module等三個插件同級
?3.4在build中加上自己創建的uni-app插件
?3.5 在自己建造的module的build文件中添加如下代碼
compileOnly fileTree(dir: '../app/libs', include: ['uniapp-v8-release.aar'])
compileOnly 'androidx.recyclerview:recyclerview:1.0.0'
compileOnly 'androidx.legacy:legacy-support-v4:1.0.0'
compileOnly 'androidx.appcompat:appcompat:1.0.0'
implementation 'com.alibaba:fastjson:1.1.46.android'
implementation 'com.facebook.fresco:fresco:1.13.0'
?
?3.6 找到下圖中存放資源文件的目錄,并將HBuilder中發行的資源文件復制并替換
?3.7 把下圖中的名字替換為新的名字
__UNI__E 更換為 __UNI__1524E40(你自己生成的是啥就寫啥)
?
?3.8 在自己的module下新建MyModule類,并添加如下代碼
package com.example.mylibrary;
import android.util.Log;
import android.widget.Toast;
import com.alibaba.fastjson.JSONObject;
import io.dcloud.feature.uniapp.annotation.UniJSMethod;
import io.dcloud.feature.uniapp.bridge.UniJSCallback;
import io.dcloud.feature.uniapp.common.UniModule;
/**
* @author han
* @date 2022/2/26 17:57
* @desc
*/
public class MyModule extends UniModule {
private static final String TAG = "MyModule";
@UniJSMethod(uiThread = true)
public void sayhello(JSONObject options, UniJSCallback callback) {
Log.e(TAG, "testAsyncFunc--"+options);
if(callback != null) {
String name = options.getString("name");
Toast.makeText(mUniSDKInstance.getContext(), name, Toast.LENGTH_SHORT).show();
JSONObject data = new JSONObject();
data.put("code", "success");
data.put("message", "我是李四");
callback.invoke(data);
//callback.invokeAndKeepAlive(data);
}
}
}
?
?3.9 在下圖位置添加插件配置
{
"plugins": [
{
"type": "module",
"name": "MyModule",
"class": "com.example.mylibrary.MyModule"
}
]
},
?
?3.10 配置appkey和證書
登錄:DCloud - HBuilder、HBuilderX、uni-app、uniapp、5+、5plus、mui、wap2app、流應用、HTML5、小程序開發、跨平臺App、多端框架
然后進入該項目生成appkey以及證書配置到Android項目中,不知道的可以參考上篇文章
uni-app官方demo(Android sdk):未配置appkey或配置錯誤。(uni原生插件開發,Android插件開發)_break妖的博客-CSDN博客_未配置appkey或配置錯誤
?
?
?
?3.11 最后運行
可以看到已經成功調用到了網頁已經安卓方法
?
?
原文鏈接:https://blog.csdn.net/qq_37980878/article/details/123154196
相關推薦
- 2022-09-04 Docker-Compose?容器集群的快速編排方法_docker
- 2022-07-17 代碼解析python標準庫logging模塊_python
- 2022-01-03 踩坑解決mongoose對已經存在的集合查詢,查詢條件不起限制作用的問題
- 2022-04-28 python導入導出redis數據的實現_python
- 2023-12-25 fiddler展示接口的響應時間
- 2022-05-12 Android textAppearance 使用
- 2022-04-25 利用Redis實現訪問次數限流的方法詳解_Redis
- 2022-07-22 CSS3過渡與動畫
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支