移动端开发--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。


五、总结


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

  • 在看源码前,我们先去官方文档复习下框架设计理念、源码分层设计
  • 阅读下框架官方开发人员写的相关文章
  • 借助框架的调用栈来进行源码的阅读,通过这个执行流程,我们就完整的对源码进行了一个初步的了解
  • 接下来再对源码执行过程中涉及的所有函数逻辑梳理一遍
相关文章
|
1月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
529 1
家政服务小程序APP开发,做好上门家政最快的方法是什么?
在家政服务领域,打造成功的平台并非易事。本文分享了三个关键步骤:避免初期盲目投入、采用低成本获客方式、建立有效的阿姨筛选机制。遵循这些方法,可助你避开常见陷阱,成为行业头部平台。
|
17天前
|
小程序 数据挖掘 UED
开发1个上门家政小程序APP系统,都有哪些功能?
在快节奏的现代生活中,家政服务已成为许多家庭的必需品。针对传统家政服务存在的问题,如服务质量不稳定、价格不透明等,我们历时两年开发了一套全新的上门家政系统。该系统通过完善信用体系、提供奖励机制、优化复购体验、多渠道推广和多样化盈利模式,解决了私单、复购、推广和盈利四大痛点,全面提升了服务质量和用户体验,旨在成为家政行业的领导者。
|
14天前
|
小程序 测试技术
上门家政维修系统软件开发,一套类似啄木鸟维修的小程序APP只要3000你敢信?
在数字化商业时代,一款名为“啄木鸟维修”的小程序 APP 以 3000 元的价格亮相,引发了广泛关注。这款 APP 功能全面,支持自营或入驻模式,提供完善的售后服务和详细的运营策略,开发周期仅需 3-5 天。它是否物超所值,还需用户自行判断,但其在市场中的表现确实引人注目。
|
14天前
|
机器人
布谷直播App系统源码开发之后台管理功能详解
直播系统开发搭建管理后台功能详解!
|
23天前
|
NoSQL PHP Redis
布谷语音app源码服务器环境配置及技术开发语言
布谷语音app源码服务器环境配置及技术语言研发。。
|
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
|
3月前
|
小程序 前端开发 Java
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
JavaDog Chat v1.0.0 是一款基于 SpringBoot、MybatisPlus 和 uniapp 的简易聊天软件,兼容 H5、小程序和 APP,提供丰富的注释和简洁代码,适合初学者。主要功能包括登录注册、消息发送、好友管理及群组交流。
104 0
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
|
3月前
|
小程序 前端开发 JavaScript
【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序
【避坑宝】是一款企业黑红名单吐槽小程序,旨在帮助打工人群体辨别企业优劣。该平台采用SpringBoot+MybatisPlus+uniapp+uview2等技术栈构建,具备丰富的注释与简洁的代码结构,非常适合实战练习与学习。通过小程序搜索“避坑宝”即可体验。
103 0
【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序