移动端开发--H5、小程序、混合APP(下)

简介: 本文适合日常开发移动端项目或对移动端开发感兴趣的小伙伴阅读。

3、uni

广东靓仔之前使用uni开发过小程序、H5、混合App,在很久前也是用过uni前身Mui,这里给小伙伴们分享下uni相关知识。


uni一套代码可以输出到10个平台:

  • Android版
  • ReactNative
  • iOS版
  • Web版
  • 微信小程序版
  • 支付宝小程序版
  • 百度小程序版
  • 字节跳动小程序版
  • QQ小程序版
  • 快应用
  • 360小程序

 

在uni的开发过程中,跟我们在开发vue项目差不多。

需要注意的是:关于样式的的兼容、一些选择器对H5支持,但是不一定支持APP端。在开发小程序和APP过程中样式隔离需要我们手动开启,H5是自动开启的。


当然,uni开发过程会有一些坑,不过现在很多都是有开发者遇到过了,也有了解决方案。这里推荐vue开发者可以选择这个框架在日常项目中使用。


4、mpvue

   mpvue使用 Vue.js 开发小程序的前端框架,基于 Vue.js 核心,mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验。


特点

  • 彻底的组件化开发能力:提高代码复用性
  • 完整的 Vue.js 开发体验
  • 方便的 Vuex 数据管理方案:方便构建复杂应用
  • 快捷的 webpack 构建机制:自定义构建策略、开发阶段 hotReload
  • 支持使用 npm 外部依赖
  • 使用 Vue.js 命令行工具 vue-cli 快速初始化项目
  • H5 代码转换编译成小程序目标代码的能力


请求

方式1: flyio

方式2: wx.request


都需要二次封装,这里简单的列举下flyio的使用说明:

import Fly from  'flyio/dist/npm/wx'
let fly = new Fly
// 请求基础路径
fly.config.baseURL = process.env.BASE_API
//添加请求拦截器
fly.interceptors.request.use(async (request: FlyRequestConfig) => {
  ...
  return request;
})
//添加响应拦截器,响应拦截器会在then/catch处理之前执行
fly.interceptors.response.use((response: FlyResponse) => {
  ...
  const { data, headers } = response
  return data
})


小程序直播

小程序里面的直播功能,官方有很简单的支持,有两种引入方式:


  1. app.json中添加分包以及插件,不要改变provider的appId
"subpackages": [
    {
      "root": "packageA",
      "pages": [
        "pages/home/home"
      ]
    }
  ],
  "plugins": {
    "live-player-plugin": {
      "version": "1.0.1",
      "provider": "xxxxxxxxxx"
    }
  },
 
2. app.json中直接添加插件,不要改变provider的appId
"plugins": {
    "live-player-plugin": {
      "version": "1.0.1",
      "provider": "xxxxxxxxxx"
    }


四、混合APP


1、APICloud

   一个技术栈可同时开发 Android & iOS 原生 App、小程序和 iOS 轻 App,且多端渲染效果统一。


特点

  • 易用:有 Vue、React 基础,可快速上手,配套专用的开发工具APICloud Studio3
  • 多端:一次开发,多端渲染,一个技术栈搞定移动端开发
  • 功能 API 丰富:提供 1千+ 模块和 2万+ API 可直接调用,面向行业和场景无限制


开发工具

APICloud Studio 3


云编译

根据需要我们可以选择编译对应的平台


调试

通过连接wifi,使用真机调试

APICloud经过几年时间的迭代,现在已经是一个成熟的框架了,小伙伴有对应需求可以放心使用这个方案。


2、React Native

  React Native 将原生开发的最佳部分与 React 相结合, 致力于成为构建用户界面的顶尖 JavaScript 框架。大多数情况下,使用 React Native 的团队可以在多个平台间共享一份基础代码


react native提供了一些核心组件

image.png


Demo

import React from 'react';
import { View, Text, Image, ScrollView, TextInput } from 'react-native';
const App = () => {
  return (
    <ScrollView>
      <Text>Some text</Text>
      <View>
        <Text>Some more text</Text>
        <Image
          source={{
            uri: 'https://reactnative.dev/docs/assets/p_cat2.png',
          }}
          style={{ width: 200, height: 200 }}
        />
      </View>
      <TextInput
        style={{
          height: 40,
          borderColor: 'gray',
          borderWidth: 1
        }}
        defaultValue="You can type in me"
      />
    </ScrollView>
  );
}
export default App;


请求

Fetch


打包

安卓:生成一个签名的 AAB 或 APK 包

苹果:Xcode 使用Release方案,产品→构建编译发布应用程序,最后将应用程序提交到 App Store。


五、总结


   在众多的技术框架中,筛选适合自己团队项目的解决方案,需要我们对对应的技术进行学习。        官方文档是最好的学习资料,大家平时遇到问题可以先到文档找下解决方案,在寻找的过程中也许会发现让你眼前一亮的知识点。    在我们阅读完官方文档后,我们一定会进行更深层次的学习,比如看下框架底层是如何运行的,以及源码的阅读。    这里广东靓仔给下一些小建议:

  • 在看源码前,我们先去官方文档复习下框架设计理念、源码分层设计
  • 阅读下框架官方开发人员写的相关文章
  • 借助框架的调用栈来进行源码的阅读,通过这个执行流程,我们就完整的对源码进行了一个初步的了解
  • 接下来再对源码执行过程中涉及的所有函数逻辑梳理一遍
相关文章
预约按摩小程序开发,为什么很多上门按摩平台根本招聘不到优秀技师?
上门按摩平台面临招不到优秀技师的问题,主要原因是平台众多,技师选择多样。为解决此问题,平台可引入技师等级制度,根据订单数量和好评率划分高、低等级技师。高等级技师可享受70%-90%的高提成及首页推荐,这不仅能激励技师的积极性,还能帮助平台筛选出优质技师,提升服务质量和口碑,形成良性循环。
|
10天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
46 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
4天前
|
小程序 云计算 Android开发
发者社区 云计算 文章 正文 小程序开发与公众号用户关联推送消息(九)
发者社区 云计算 文章 正文 小程序开发与公众号用户关联推送消息(九)
21 3
|
10天前
|
小程序
|
8天前
|
数据采集 网络协议 算法
移动端弱网优化专题(十四):携程APP移动网络优化实践(弱网识别篇)
本文从方案设计、代码开发到技术落地,详尽的分享了携程在移动端弱网识别方面的实践经验,如果你也有类似需求,这篇文章会是一个不错的实操指南。
22 1
|
11天前
|
小程序 数据安全/隐私保护
|
10天前
|
小程序
|
1月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
213 3
|
1月前
|
小程序 API
微信小程序更新提醒uniapp
在小程序开发中,版本更新至关重要。本方案利用 `uni-app` 的 `uni.getUpdateManager()` API 在启动时检测版本更新,提示用户并提供立即更新选项,自动下载更新内容,并在更新完成后重启小程序以应用新版本。适用于微信小程序,确保用户始终使用最新版本。以下是实现步骤: ### 实现步骤 1. **创建更新方法**:在 `App.vue` 中创建 `updateApp` 方法用于检查小程序是否有新版本。 2. **测试**:添加编译模式并选择成功状态进行模拟测试。
48 0
微信小程序更新提醒uniapp

热门文章

最新文章