【uni-app】【Android studio】手把手教你运行uniapp项目到Android App
运行到Android App基座
- 选择运行到Android App基座

- 选择运行项目
1、连接手机,在手机上选择 传输文件。

2、打开设置->关于本机->版本信息->连续点击4-5次版本号,输入手机密码,系统就进入了开发者模式。

3、设置>其他设置>开发者选项> 打开开发者选项> 打开USB调试。
4、回到Hbuilder,点击刷新,选择设备,运行项目。

- 运行失败
请使用手机助手手动安装XXX.apk到手机上,并重新运行真机调试
不知道为什么文件就是传输不到手机上,下载了文件助手也不连接不到手机。所以用最简单的办法吧。
这个报错是因为Hbuilder没办法把apk发送并安装到手机上,打开它说的那个目录C:\Users\[自己的目录]\Downloads\HBuilderX.3.7.11.20230427\HBuilderX\plugins\launcher\base\android_base.apk,直接把apk微信发送到手机上,然后手动改名字,点击安装,安装好了就有这个图标。

安装好了之后,回到电脑Hbuilder,重新运行。
出现的错误:
Failed to connect to localhost/127.0.0.1:8080
手机HBuilder关掉,电脑重新编译,多试两次就好了。
运行到模拟器
- 下载安装Android Studio,uni-app官方有提供下载地址和安装教程,我这里说点官方没详细说的。下载完,安装的时候一直默认的往下点就好了。安装好studio之后。
遇到的问题
1、点开SDK Manager,发现没有SDK Platform。跟着这个教程来,真的很详细。

2、修改SDK目录,然后安装的时候没成功,也不是报错,就是说包已存在,就用了已存在的包。看到这个评论,修改了路径,往上一层移了一下。

3、下载包失败:因为我有“科技”支持,所以这里代理选的Auto-detect。大家可以试一下Check connection,从后面下载的detail里面可以看到是从https://dl.google.com下载安装包的,所以就用这个网址去测试就行,这个能测通那就说明后面的安装网络是没有问题的。

一定是出现下面的日志才说明安装成功了,不然点了finish回来也选不了sdk platform和sdk tools。

按照上面那个详细教程继续即可,天知道我试了多久才总算成功了。一把辛酸泪。
- Android 原生工程配置。可以参见uni-app教程,建议采用
方式二:导入工程,里面包都放好了。我这里主要说明一些没提到的细节,和我遇到的问题。
1、这个HBuilder-Integrate-AS工程,就是在下载好的App离线SDK里面。里面build.gradle已经放好了aaptOptions。

2、Androidmanifest.xml在manifests目录下面,已经放好了meta-data标签。只需要改value。


- 申请签名appkey
1、打开开发者中心,应用管理>我的应用> 点击应用查看应用信息。点击Android云端证书,如果没有生成过点击生成证书。生成过了点击证书详情,记录下MD5/SHA1/SHA256信息。


2、点击各平台信息,原来的离线打包Key管理已经迁移过来了。点击新增,新增平台信息。把之前记录的SHA和MD5信息填入,包名是Android studio项目的applicationId。


3、新增完之后,挪到表格的最后,可以看到表格有一列离线打包Key,如果之前没有生成过,就点击创建,会有一个弹窗,反正点击创建就行。完了之后这里就会变成查看。

点击查看就能看到App Key,这就是离线key。把这个放到项目里面的AndroidManifest.xml里面去。


发行
Hbuilder选择发行 > 原生App-云打包
这里的云端证书就是之前在Dcloud生成过的。

中间会有弹窗提示:
打包校验:[Warning] 为落实《网络安全法》《消费者权益保护法》的要求,有效治理App强制授权、过度索权、超范围收集个人信息等现象,保障个人信息安全国内各大应用市场都加强了应用审核,要求应用必须符合相关政策才能上架查看如何解决。不上架国内应用市场无需处理

这个如果只是为了验证apk效果,可以先继续打包,但是如果要上架国内应用市场,得去提供的(链接)[https://uniapp.dcloud.net.cn/tutorial/app-privacy-android.html#]里将相关的隐私申明等配置好。
打包好了之后会有提示,把apk文件传到手机上运行就能看效果了。

报错: java.net.SocketTimeoutException: Connect timed out
android studio 代理设置,check connection只要能连上https://dl.google.com就行。
参考:
官方真机运行常见报错
相关文章:
【uni-app】【Android studio】手把手教你运行uniapp项目到Android App
运行到Android App基座 选择运行到Android App基座 选择运行项目 1、连接手机,在手机上选择 传输文件。 2、打开 设置-> 关于本机 -> 版本信息->连续点击4-5次版本号 ,输入手机密码,系统就进入了开发者模式。 3、设置 > 其他设…...
多线程(JavaEE初阶系列6)
目录 前言: 1.什么是线程池 2.标准库中的线程池 3.实现线程池 结束语: 前言: 在上一节中小编带着大家了解了一下Java标准库中的定时器的使用方式并给大家实现了一下,那么这节中小编将分享一下多线程中的线程池。给大家讲解一…...
shell清理redis模糊匹配的多个key
#!/bin/bash# 定义Redis服务器地址和端口 REDIS_HOST"localhost" REDIS_PORT6380# 获取匹配键的数量 function get_matching_keys() {local key_pattern"$1"redis-cli -h $REDIS_HOST -p $REDIS_PORT -n 0 KEYS "$key_pattern" }# 删除匹配的键 …...
【电网异物检测硕士论文摘抄记录】电力巡检图像中基于深度学习的异物检测方法研究
根据国家电力行业发展报告统计,截止到 2018 年,全国电网 35 千伏及以上的输电线路回路长度达到 189 万千米,220 千伏及以上输电线路回路长度达73 万千米。截止到 2015年,根据国家电网公司的统计 330 千伏及以上输电线路故障跳闸总…...
C++共享数据的保护
虽然数据隐藏保护了数据的安全性,但各种形式的数据共享却又不同程度地破坏了数据的安全。因此,对于既需要共享有需要防止改变的数据应该声明为常量。因为常量在程序运行期间不可改变,所以可以有效保护数据。 1.常对象 常对象:它…...
MyBatisPlus学习记录
MyBatisPlus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提高效率 MyBatisPlus简介 入门案例 创建新模块,选择Spring初始化,并配置模块相关基础信息选择当前模块需要使用的技术集(仅选择MySQL …...
如何开启一个java微服务工程
安装idea IDEA常用配置和插件(包括导入导出) https://blog.csdn.net/qq_38586496/article/details/109382560安装配置maven 导入source创建项目 修改项目编码utf-8 File->Settings->Editor->File Encodings 修改项目的jdk maven import引入…...
libhv之hio_t分析
上一篇文章解析了fd是怎么与io模型关联。其中最主要的角色扮演者:hio_t 1. hio_t与hloop的关系 fd的值即hio_t所在loop ios变量中所在的index值。 hio_t ios[fd] struct hloop_s { ...// ios: with fd as array.index//io_array保存了和hloop关联的所有hio_t&…...
C语言的转义字符
转义字符也叫转移序列,包含如下: 转移序列 \0oo 和 \xhh 是 ASCII 码的特殊表示。 八进制数示例: 代码: #include<stdio.h> int main(void) {char beep\007;printf("%c\n",beep);return 0; }结果: …...
【腾讯云 Cloud Studio 实战训练营】CloudStudio体验真正的现代化开发方式,双手插兜不知道什么叫对手!
CloudStudio体验真正的现代化开发方式,双手插兜不知道什么叫对手! 文章目录 CloudStudio体验真正的现代化开发方式,双手插兜不知道什么叫对手!前言出现的背景一、CloudStudio 是什么?二、CloudStudio 的特点三、CloudS…...
Pandas时序数据分析实践—时序数据集
1. 跑步运动为例,对运动进行时序分析 时序数据是指时间序列数据,是按照时间顺序排列的数据集合,每个数据点都与一个特定的时间戳相关联。在跑步活动中,我们可以将每次跑步的数据记录作为一个时序数据样本,每个样本都包…...
use strict 是什么意思?使用它区别是什么?
use strict 是什么意思?使用它区别是什么? use strict 代表开启严格模式,这种模式下使得 JavaScript 在更严格的条件下运行,实行更严格解析和错误处理。 开启“严格模式”的优点: 消除 JavaScript 语法的一些不合理…...
常见OOM异常分析排查
常见OOM异常分析排查 Java内存溢出Java堆溢出原因解决思路总结 Java内存溢出 java堆用于存储对象实例,如果不断地创建对象,并且保证GC Root到对象之间有可达路径,垃圾回收机制就不会清理这些对象,对象数量达到最大堆的容量限制后就会产生内存溢出异常. Java堆溢出原因 无法在…...
kubernetes网络之网络策略-Network Policies
Kubernetes 中,Network Policy(网络策略)定义了一组 Pod 是否允许相互通信,或者与网络中的其他端点 endpoint 通信。 NetworkPolicy 对象使用标签选择Pod,并定义规则指定选中的Pod可以执行什么样的网络通信࿰…...
交换机VLAN技术和实验(eNSP)
目录 一,交换机的演变 1.1,最小网络单元 1.2,中继器(物理层) 1.3,集线器(物理层) 1.4,网桥(数据链路层) 二,交换机的工作行为 2.…...
8.Winform界面打包成DLL提供给其他的项目使用
背景 希望集成一个Winform的框架,提供权限菜单,根据权限出现各个Winform子系统的菜单界面。不希望把所有的界面都放放在同一个解决方案下面。用各个子系统建立不同的解决方案,建立代码仓库,进行管理。 实现方式 将Winform的UI界…...
海量数据存储组件Hbase
hdfs hbase NoSQL数据库 支持海量数据的增删改查 基于Rowkey查询效率特别高 kudu 介于hdfs和hbase之间 hbase依赖hadoopzookeeper,同时整合框架phoenix(擅长读写),hive(分析数据) k,v 储存结构 稀疏的(为空的不存…...
(一)基于Spring Reactor框架响应式异步编程|道法术器
在执行程序时: 通常为了提供性能,处理器和编译器常常会对指令进行重排序。 从排序分为编译器重排序和处理器重排序两种 * (1)编译器重排序: 编译器保证不改变单线程执行结构的前提下,可以调整多线程语句执行顺序; * (2)处理器重排序: 如果不存在数据依赖…...
Vue3 让localstorage变响应式
Hook使用方式: import {useLocalStore} from "../js/hooks"const aauseLocalStore("aa",1) 需求一: 通过window.localStorage.setItem可以更改本地存储是,还可以更新aa的值 window.localStorage.setItem("aa&quo…...
【深度学习】InST,Inversion-Based Style Transfer with Diffusion Models,论文,风格迁移,实战
代码:https://github.com/zyxElsa/InST 论文:https://arxiv.org/abs/2211.13203 文章目录 AbstractIntroductionRelated WorkImage style transferText-to-image synthesisInversion of diffusion models MethodOverview ExperimentsComparison with Sty…...
dockerc故障排除终极指南:10个常见错误和解决方案清单
dockerc故障排除终极指南:10个常见错误和解决方案清单 【免费下载链接】dockerc container image to single executable compiler 项目地址: https://gitcode.com/gh_mirrors/do/dockerc dockerc作为一款container image to single executable compiler工具&…...
Krita AI Diffusion插件IP-Adapter缺失问题深度解析与实战解决方案
Krita AI Diffusion插件IP-Adapter缺失问题深度解析与实战解决方案 【免费下载链接】krita-ai-diffusion Streamlined interface for generating images with AI in Krita. Inpaint and outpaint with optional text prompt, no tweaking required. 项目地址: https://gitcod…...
HBuilderX+Android Studio本地离线打包Uniapp安卓Apk全流程解析
1. 为什么需要本地离线打包? 每次用HBuilderX云打包都要排队等半天?项目紧急上线时看着进度条干着急?作为过来人,我太懂这种痛苦了。去年我们团队开发医疗问诊App时,高峰期云打包排队超过2小时,差点耽误版…...
Mac用户福音:Qwen3-TTS声音克隆在ComfyUI上的M芯片优化方案
Mac用户福音:Qwen3-TTS声音克隆在ComfyUI上的M芯片优化方案 1. 为什么Mac用户需要特别优化方案 苹果M系列芯片凭借其出色的能效比和统一内存架构,已经成为许多创意工作者的首选。然而,在运行AI模型时,特别是像Qwen3-TTS这样的语…...
基于Phi-4-mini-reasoning的智能运维异常检测系统
基于Phi-4-mini-reasoning的智能运维异常检测系统 1. 运维监控的痛点与智能化需求 运维团队每天都要面对海量的日志数据、监控指标和系统告警。传统监控系统往往只能做到简单的阈值告警,当系统出现异常时,运维人员需要手动翻阅成千上万条日志ÿ…...
5分钟部署阿里RexUniNLU:Web界面操作,无需编程基础
5分钟部署阿里RexUniNLU:Web界面操作,无需编程基础 1. 认识RexUniNLU:零样本理解的神器 想象一下,你刚接手一个新项目,老板丢给你一堆用户评论,要求你快速分析出大家对产品"屏幕"、"续航&…...
YOLOv8模型在RKNN平台上的实战部署指南(附完整代码)
YOLOv8模型在RKNN平台上的实战部署指南(附完整代码) 在嵌入式设备上部署高性能目标检测模型一直是计算机视觉领域的难点。瑞芯微(Rockchip)推出的RKNN推理框架为这一挑战提供了解决方案,尤其适合需要低功耗、高效率的边…...
HunyuanVideo-Foley成本效益分析:自建服务与使用商用API的对比
HunyuanVideo-Foley成本效益分析:自建服务与使用商用API的对比 1. 引言:音效生成的技术选择困境 在视频制作领域,高质量音效往往能决定作品的最终质感。HunyuanVideo-Foley作为先进的AI音效生成技术,为企业提供了两种主要使用路…...
BGE-Reranker-v2-m3为何必须用?RAG幻觉过滤入门必看
BGE-Reranker-v2-m3为何必须用?RAG幻觉过滤入门必看 如果你正在搭建RAG系统,或者已经搭建了但总觉得回答质量时好时坏,经常出现“幻觉”——也就是模型一本正经地胡说八道——那你很可能遇到了一个核心问题:向量检索“搜不准”。…...
MIKE URBAN中污水处理厂如何进行概化
01 前言应用厂网一体化耦合模型研究水厂间调度和厂前溢流入河污染量等内容时,由于不需要关注污水处理厂内部的具体处理工艺,需要对污水处理厂的关键设施进行概化处理。02 水厂资料收集收集污水处理的工艺流程图和设施设计参数。依据厂网一体化模型的研究…...
