App相关技术以及打包
平时小伙伴们自己的博客网站只能在浏览器打开,但是有时候你想要制作自己独立个人博客app,宣传并推广自己的app,打造个人ip。如何把自己的web博客网站打包成安卓app?
1.开发App的相关技术使⽤
⽬前市⾯上的移动互联开发技术主要分为三种,NativeAPP(基于本地操
作系统运⾏)、Web APP(基于⼿机浏览器运⾏)与HybridApp(混合模
式移动应⽤)。
1.1.原⽣开发
原⽣开发⽬前的主流技术包含iOS与Android开发,使⽤的是Apple与
Google⾃家的开发语⾔。
Apple开发者⽹站
Android开发者⽹站
原⽣App开发特点:
- 每⼀种移动操作系统都需要独⽴的开发项⽬
- 每种平台都需要独⽴的开发语⾔。iOS(Objective-C, swift),
Android(Kotlin,Java)
- 需要使⽤各⾃的软件开发包,开发⼯具以及各⾃的控
件;iOS(Xcode),Android(Android Studio) - iOS开发对系统依赖性较强,只能在MacOS与iPadOS(21年九⽉后)系
统下进⾏编程上架
能⼒⽅⾯: - 能够与移动硬件设备的底层功能,⽐如个⼈信息,摄像头以及重⼒加
速器等等
获取⽅法 - 直接下载到设备
- 以独⽴的应⽤程序运⾏(并不需要浏览器)
- ⽤户必须⼿动去下载并安装这些原⽣App
- 有⼀些商店与卖场来帮助⽤户寻找你的App,⽬前app市场不计其数
版本控制
- ⽤户可以⾃由地选择是否更新软件版本,所以会出现不同⽤户同时使
⽤不同版本的情况
优势
- ⽐移动WebApp运⾏快
- ⼀些商店与卖场会帮助⽤户寻找原⽣App
- 官方⽅卖场的应⽤审核流程会保证让⽤户得到⾼质量以及安全的App
- 官⽅会发布很多开发⼯具或者⼈⼯⽀持来帮助你的开发
劣势
- 开发成本⾼,尤其是当需要多种移动设备来测试时
- 因为是不同的开发语⾔,所以开发,维护成本也⾼
- 因为⽤户使⽤的App版本不同,所以你维护起来很困难
- 官⽅卖场审核流程复杂且慢,会严重影响你的发布进程
1.2.Web App开发
使⽤前端技术进⾏App的开发,主要技术有H5,Vue等,相当于讲前端
技术放在原⽣的webView中去执⾏
Web App开发特点
- 因为运⾏在移动设备的浏览器上,所以只需要⼀个开发项⽬
- 这种应⽤可以使⽤HTML5,CSS3以及JavaScript以及服务器端语⾔来
完成(Java,Python,PHP等) - 这⾥没有标准的SDK,可以选择跨平台开发⼯具进⾏打包发布,⽐如
PhoneGap, Cordova等
能⼒⽅⾯
- 只能使⽤有限的移动硬件设备功能。
获取⽅法
- 从移动设备上的浏览器访问
- 不需要安装额外的软件
- 软件更新只需要服务器就够了
- 可以使⽤打包⼯具进⾏App打包,发布到iOS与Android软件市场
版本控制
- 所有的⽤户都是⽤同样的版本
优势 - HTML5具有很强的兼容性,原来必须要⽤原⽣技术去做的效果或者
功能现在基本都可以通过简单的 HTML5开发技术实现 - 跨平台开发
- 使⽤现有组件库或框架进⾏快速开发
- 开发成本低,掌握前端技术便可很快上⼿
- 如果你已经有了⼀个WebApp,你可以使⽤ responsive web design
来辅助改进
- 迭代更容易
劣势
- ⽆法使⽤很多移动硬件设备的独特功能
- 要同时⽀持多种移动设备的浏览器让开发维护的成本也不低
- 如果⽤户使⽤更多的新型浏览器,那问题就更不好处理了
1.3.混合式开发
是指介于web-app、native-app这两者之间的app,兼具“Native App良
好⽤户交互体验的优势”和“Web App跨平台开发的优势”。
混合式开发主流技术
React Native(facebook开源的基于reactJs的RN)
优点:
- 能够在Javascript和React的基础上获得完全⼀致的开发体验,构建
世界⼀流的原⽣APP。 - 仅需学习⼀次,编写任何平台。(Learn once, write anywhere)
缺点: - 初次学习成本⾼
- 必须在不同平台下写两套代码,依赖暴露的接⼝
⾕歌 Flutter(Flutter是⾕歌的移动UI框架, Dart 语⾔)
Flutter是⾕歌的移动UI框架,可以快速在iOS和Android上构建⾼质量
的原⽣⽤户界⾯。 Flutter可以与现 有的代码⼀起⼯作。
优点:
- 快速开发,Flutter的热重载可帮助您快速地进⾏测试、构建UI、
添加功能并更快地修复错误。在iOS 和Android模拟器或真机上可以
在亚秒内重载,并且不会丢失状态 - UI界⾯⽐较漂亮,使⽤Flutter内置美丽的Material Design和
Cupertino(iOS⻛格)widget、丰富的 motion API、平滑⽽⾃然的
滑动效果和平台感知,为您的⽤户带来全新体验。 - 不会原⽣可以直接开发
- 原⽣性能⽐较好
缺点:
- ⽬前仍然处于技术更新完善阶段
- 脱离不开原⽣,开发⼈员需要具备原⽣(Android、iOS)基础开
发能⼒ - 适配问题,开发⼯具版本升级后,修改量⼤
阿⾥weex(阿⾥巴巴开源的基于Vue.js)
Weex是2016年6⽉由阿⾥巴巴推出的⼀个动态化的⾼扩展跨平台解决
⽅案,⽀持iOS、安卓、YunOS及 Web等多端开发部署。
优点:
-
Weex 的结构是解耦的,渲染引擎与语法层是分开的,也不依赖任
何特定的前端框架 -
⽬前主要⽀持 Vue.js 和 Rax这两个前端框架。
-
渲染 Weex ⻚⾯时和渲染原⽣⻚⾯⼀样。
-
⼀套基础的内置组件
-
不需要安装复杂的环境,运⾏环境简洁、调试⼯具也还好,容易做
降级处理,特别适合开发单个⻚⾯
缺点:
- ⽂档更新不及时,资料不多
- 坑⽐较多,前端
2.使⽤HBuilderX打包Web App
这里推荐使用HBuilderX,当然用其他的也可以,但是因为从软件的用户体验上来讲,跟市面上的这些软件比起来。确实比较简单,比较好用,这个软件的体积非常的小,大概只有十几MB,也不需要你安装,你只需要下载下来解压就可以使用。尤其对初学者来讲,这个软件几乎不需要什么学习成本,就可以快速的掌握它。
下载HBuilderX⼯具,打包Web App https://www.dcloud.io/
打包步骤(以Vue为例)
1.在项⽬根⽬录下新建vue.config.js⽂件,写⼊如下配置
module.exports = {
publicPath: './',
outputDir: 'dist',
assetsDir: 'static'
}
2.在src/router/index.js下,将路由history模式注释掉
3.在项⽬路径下执⾏命令npm run build,⽣成dist打包⽂件
4.打开HBuilder,新建项⽬,选择H5+App,输⼊项⽬名称,选择项⽬路
径,点击创建
5.了解⽬录结构
6.找打打包⽣成的dist⽂件,放⼊到项⽬中,替换已经存在的index.html⽂
件
7.基础配置
8.图标配置
9.如需配置App启动图⽚,可以⾃⾏配置
10.配置SDK
11.根据⾃⼰的需求,进⾏权限配置使⽤
12.App常⽤其他设置
13.源码视图
"statusbar":{ // 应⽤可视区域到系统状态栏下透明显示效果
"immersed": true
}
14.原⽣App-云打包
进⼊⽹站填写⼿机号验证
15.打包成功后,找到对应apk使⽤即可
链接直接打包成Apk 参考我这篇
使用android studio将网站打包成apk(可以直接使用替换为自己的网站连接即可)
参考
HBuilderX官方(App离线打包):
https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html#versioncode
segmentfault博客:https://segmentfault.com/a/1190000040092971
CSDN博客:https://blog.csdn.net/PIOnly/article/details/125196697
相关文章:
App相关技术以及打包
平时小伙伴们自己的博客网站只能在浏览器打开,但是有时候你想要制作自己独立个人博客app,宣传并推广自己的app,打造个人ip。如何把自己的web博客网站打包成安卓app? 1.开发App的相关技术使⽤ ⽬前市⾯上的移动互联开发技术主要分…...
【unity】【游戏开发】Unity代码不给提示怎么办?
【现象】 Unity用着用着忽然VS脚本不给提示了。 【分析】 重启Unity无效 重启VS无效 重装VS无效 感觉应该是项目设置问题 【最终方法】 打开Edit->Preferences。 如果是这个画面就把Script Editor改成自己的VS编辑器。 变成下面这个样子,点击Regenerate Pr…...
Kubernetes固定Pod IP和Mac地址
方案1: 在 Calico GitHub Issues#5196 问题的 commits#6249 提交中,引入新的 Pod 注释cni.projectcalico.org/hwAddr,用于将指定的 MAC 地址分配给容器端 Veth 接口。 将Calico升级至v3.24.1或以上版本,使用如下注解轻松设置Pod…...
计算机组成原理之数据的对齐和大/小端存放方式、计算机中数据对齐的具体方式有哪些
1、计算机组成原理之数据的对齐和大/小端存放方式 数据对齐 数据对齐是处理器为了提高处理性能而对存取数据的起始地址所提出的一种要求。 系统一次性读取内存中数据的大小是固定的,例如字长为32位的操作系统,默认的一次读取4字节内容。因此ÿ…...
【学术论文投稿】Windows11开发指南:打造卓越应用的必备攻略
【IEEE出版南方科技大学】第十一届电气工程与自动化国际会议(IFEEA 2024)_艾思科蓝_学术一站式服务平台 更多学术会议论文投稿请看:https://ais.cn/u/nuyAF3 目录 引言 一、Windows11开发环境搭建 二、Windows11关键新特性 三、Windows11设计指南 …...
【毕业论文+源码】基于SSM(Spring + Spring MVC + MyBatis)的房屋租赁系统
创建一个基于SSM(Spring Spring MVC MyBatis)框架的房屋租赁系统是一个涉及多个步骤的过程。这个过程包括但不限于需求分析、数据库设计、前端界面设计以及后端逻辑实现等。 1. 需求分析 首先,明确你的房屋租赁系统的功能需求。例如&…...
【golang】解析 JSON到指定结构体
1.解析[1,2,3,4]数组类型的json package mainimport ("encoding/json""fmt" )func main() {// JSON 数据jsonData : [1, 2, 3, 4]// 定义一个切片来接收解析后的数据var numbers []int// 解析 JSON 数据到切片err : json.Unmarshal([]byte(jsonData), &am…...
设计模式——过滤器模式
一、定义和概念 定义 C 过滤器模式(Filter Pattern)也称为标准模式(Criteria Pattern),是一种设计模式,用于根据不同的标准或条件从一组对象中筛选出符合条件的对象。它将筛选条件的逻辑封装在不同的过滤器…...
Unity(四十八):Unity与Web双向交互
效果 游戏对象绑定脚本 游戏脚本源码 using System.Collections; using System.Collections.Generic; using UnityEngine;public class Tent : MonoBehaviour {public Camera camera;// Start is called before the first frame updatevoid Start(){}// Update is called once…...
web前端--网页练习
html代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>小米</title><!-- 引…...
信息安全入门——网络安全控制
目录 前言信息安全入门:网络安全控制基础1. 用户识别技术:确认你是谁2. 访问控制技术:定义你能做什么3. 访问控制列表(ACL):精细的权限管理4. 漏洞控制:防范未然5. 入侵检测系统(IDS…...
跟着鸟儿学飞行?扑翼机器人的感知秘籍
大家好!今天来了解一篇扑翼机器人的研究——《Avian-inspired embodied perception in biohybrid flapping-wing robotics》发表于《Nature Communications》。在广阔天空中,鸟类凭借精妙翅膀结构与敏锐感知自由翱翔,这一直吸引着科学家探索其…...
Python画笔案例-093 绘制 彩虹图
1、绘制 彩虹图 通过 python 的turtle 库绘制 彩虹图,如下图: 2、实现代码 绘制 彩虹图,以下为实现代码: """彩虹图.py """ import turtledef draw_semi_circle(radius):"""画半圆函数"""turtle...
【数据结构】贪心算法:决策的艺术
贪心算法(Greedy Algorithm)是一类在每一步选择中都采取局部最优解的方法,希望最终能够达到全局最优解。通俗地说,贪心算法的思想就是“每一步都尽量做出最好的选择”,以期望整个过程的最终结果也达到最优状态。贪心算…...
Linux LVS详解
LVS(Linux Virtual Server)即Linux虚拟服务器,是一个基于Linux操作系统的高性能、可扩展的负载均衡器。以下是对LVS的详细介绍: 一、简介 LVS项目由章文嵩博士在1998年5月发起,是中国国内最早出现的自由软件项目之一…...
LabVIEW显微镜自动对焦系统
在生物医学研究中,显微镜图像的清晰度对于细胞分析非常重要。传统的手动对焦方法容易受到人为因素的影响,因此开发了一种自动对焦技术,以提高图像采集的准确性和效率。 自动对焦方法概述 该系统结合了图像清晰度评估和一维功能优化ÿ…...
基于IP的真实地址生成器
ip-geoaddress-generator 是一个基于 Web 的在线应用程序,能够根据 IP 地址生成真实的随机地址信息。通过多个 API 获取位置数据和随机用户信息,该工具为用户提供了完整的虚拟身份。它由 Next.js 和 Radix UI 构建,具备自动检测当前 IP 地址和…...
下面程序头的三个import语句可以合并或简化么?
下面程序头的三个import语句可以合并或简化么? from tkinter.simpledialog import askinteger from tkinter import * from tkinter import messagebox ——是的,三个import语句可以合并为一个。 合并后的import语句如下所示: from tkinte…...
深度学习--CNN实现猫狗识别二分类(附带下载链接, 长期有效)
1. 代码实现(包含流程解释) 样本量: 8005 # # 1.导入数据集(加载图片)数据预处理# 进行图像增强, 通过对图像的旋转 ,缩放,剪切变换, 翻转, 平移等一系列操作来生成新样本, 进而增加样本容量, # 同时对图片数值进行归一化[0:1] from tensorflow.keras.preprocessing.image …...
Depcheck——专门用于检测 JavaScript 和 Node.js 项目中未使用依赖项的工具
文章目录 Depcheck 是什麽核心功能📚检测未使用的依赖🐛检测缺失的依赖✨支持多种文件类型🌍可扩展性 安装与使用1. 安装 Depcheck2. 使用 Depcheck Depcheck 的应用总结项目源码: Depcheck 是什麽 来看一个常见错误场景…...
前端构建工具vite的优势
1. 极速冷启动 Vite 使用原生 ES 模块 (ESM) 在开发环境下进行工作。相比于传统构建工具需要打包所有的文件,Vite 只在浏览器请求模块时动态加载所需的文件。无打包冷启动:无需预先打包,项目启动非常快,尤其对于大型项目效果更明…...
hive查询语句
1.基本语法 SELECT [ALL | DISTINCT]select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BYcol_list] [HAVING where_condition] [ORDER BYcol_list] [CLUSTER BYcol_list | [DISTRIBUTE BY col_list] [SORT BY col_list] ] [LIMIT number] …...
【AIGC】2024-ECCV-ControlNet++:通过有效的一致性反馈改进条件控制
2024-ECCV-ControlNet: Improving Conditional Controls with Efficient Consistency Feedback ControlNet:通过有效的一致性反馈改进条件控制摘要1. 引言2. 相关工作2.1 基于扩散的生成模型2.2 可控的文本到图像扩散模型2.3 语言和视觉奖励模型 3. 方法3.1. 初步3.…...
Mysql5.7变为GreatSQL 8.0.32-25过程中,SQL语句报错及解决方案
考虑兼容国产化数据库,现需要将Mysql5.7变为GreatSQL,在执行部分sql时,发现在Mysql5.7无报错,在GreatSQL有报错,在此记录一下遇到的几个错误。 1.ERROR 1231 (NO_AUTO_CREATE_USER) 1.1.报错提示 ERROR 1231 (42000…...
Qt 使用QAxObject将QTableView数据导出到Excel表格
这是我记录Qt学习过程的第6篇心得文章,主要是方便自己编写的应用程序导出Excel数据的,走了不少弯路直接上代码。 实现代码: //人员信息导出 ui->pbtn2->setEnabled(false); // 打开文件对话框,选择 excel文件 QString fil…...
fastGpt
参考本地部署FastGPT使用在线大语言模型 1 rockylinx 1 ollama安装 在rockylinux中安装的,ollama由1.5G,还是比较大,所有采用在windows下下载,然后安装的方式,linux安装 tar -C /usr -xzf ollama-linux-amd64.tgz #…...
如何全方位应对服务可用性的挑战
在数字化转型的浪潮中,运维团队正站在企业IT架构的核心位置,面对着前所未有的挑战。服务响应时间和失败率,作为衡量服务质量的重要指标,一直备受关注。然而,在追求这两项指标优化的同时,运维团队还需关注其…...
二进制方式部署k8s集群
目标任务: 1、Kubernetes集群部署架构规划 2、部署Etcd数据库集群 3、在Node节点安装Docker 4、部署Flannel网络插件 5、在Master节点部署组件(api-server,schduler,controller-manager) 6、在Node节点部署组件(kubelet,kube-proxy) 7、查看集群状态 8、运行⼀个测…...
Vivado时序报告七:Report Clock NetworkReport Clock Interaction详解
目录 一、前言 二、Report Clock Network 2.1 Report Clock Network流程 2.2 Report Clock Network报告 三、Report Clock Interaction 3.1 示例设计 3.2 配置选项 3.2.1 Options 3.2.2 Timer_Settings 3.3 Clock Interaction报告 3.3.1 Clock Pair Classification …...
HarmonyOS 组件样式@Style 、 @Extend、自定义扩展(AttributeModifier、AttributeUpdater)
1. HarmonyOS Style 、 Extend、自定义扩展(AttributeModifier、AttributeUpdater) Styles装饰器:定义组件重用样式 ;Extend装饰器:定义扩展组件样式 自定义扩展:AttributeModifier、AttributeUpdater 1.1. 区…...
怎样找回网站域名密码/seo优化顾问
sudo apt-get update sudo apt-get install mysql-server mysql-client //密码:mmchong sudo netstat -tap|grep mysql //检查mysql的端口是否listenmysql -u root -p //启动,提示输入密码转载于:https://www.cnblogs.com/amelie-tingting/p/6125646.ht…...
长治网站建设/谷歌seo
spring.jar和spring-hibernate3.jar有什么区别吗?功能一样,不会只是改了名字吧? 2013-03-19 14:52我与7524 | 分类:JAVA相关 |浏览170次分享到: 2013-03-20 13:27提问者采纳spring.jar只是支持spring框架的核心包spring-hibernat…...
wordpress+dux5.0/seo优化教程视频
播放铃声: Uri notification RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM); Ringtone r RingtoneManager.getRingtone(context,notification); r.play(); 系统闹钟源码分析...
传奇网站装备动态图怎么做/网站关键词排名seo
ubuntu 10.10以前的操作方法:1 第一步,具体命令及操作如下:sudo vi /etc/init/rc-sysinit.confenv DEFAULT_RUNLEVEL3 <------将原来的env DEFAULT_RUNLEVEL2修改为env DEFAULT_RUNLEVEL32 第二步,具体命令及操作如下ÿ…...
网站开发软件有哪些/百度seo查询系统
mount命令 可以使用mount命令挂载光 盘镜像文件、移动硬盘、U盘以及Windows 网络共享和UNIX NFS网络共享等 软件包管理 rpm deb yum yum常用命令 yum list 查询服务器上所有可用的软件包 yum search 搜索服务器上的软件包...
wordpress插件的作用/十大中文网站排名
为了画个图,被numpy这个模块的安装真的折腾疯了!!!一直装不上,花了几个小时,看了网上的很多教程、方法发现总结得不是很全,这里总结一下,防止大家再出现这个问题没有解决方法。Pytho…...