weex开发android应用

简介: weex使用简要介绍

weex

Android环境构建

前期准备

  • 安装JDK(version >= 1.7)并配置环境变量(JAVA_HOME)
  • 安装Android SDK 并配置环境变量(ANDROID_HOME)
  • Android SDK version 23 (compileSdkVersion in build.gradle)
  • SDK build tools version 23.0.1 (buildToolsVersion in build.gradle)
  • Android Support Repository >= 17 (for Android Support Library)

JDK下载地址:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

Android Studio下载地址:

https://developer.android.com/studio/install.html

环境变量配置:

1. JAVA环境变量设置:

// Jdk 是java development kit,是java的开发工具包

新建系统变量JAVA_HOME:C:\Program Files(x86)\Java\jdk1.8.0_144

// Jre 是java runtime environment, 是java程序的运行环境

新建JRE_HOME系统变量:C:\Program Files (x86)\Java\jre1.8.0_144

// 指定类搜索路径

新建CLASSPATH系统变量:.;%JAVA_HOME%\lib;%JRE_HOME%\lib

PATH系统变量里添加:.;%JAVA_HOME%\bin;%JRE_HOME%\bin

2. Android环境变量配置

新建系统变量ANDROID_HOME -> D:\Android-sdk\

PATH系统变量里添加:D:\Android-sdk\platforms;D:\Android-sdk\platform-tools

weex简介

Weex 是一个使用 Web 开发体验来开发高性能原生应用的框架。

Weex优点

  1. 在Ios和Android上都实现了一个渲染引擎,并提供了一套基础的内置组件,渲染出来的都是原生组件
  2. 提供了一套基础的内置模块,可以通过这些模块来调用一些原生方法
  3. 编写一次代码,三端共用(Web, Android, Ios)
  4. Weex将Vue, Rax作为其内置的前段框架(Vue.js, Rax都已经集成了Weex SDK, 你不需要再额外引用)

Weex使用

  1. 安装全局的weex-toolkit, 这条命令会在命令行环境中注册一个weex命令或者安装全局的weexpack
npm install weex-toolkit -g || npm install weexpack -g
  1. 使用weex或者weexpack命令创建一个模板项目
weex create template-app || weexpack create template-app
  1. 添加特定平台, Android 或者 Ios
weex platform add ios || weex platform add android
    
weexpack platform add ios || weexpack platform add android
  1. 在虚拟机上或者真机上调试项目
weex run ios || weex run android || weex run web

weexpack run ios || weexpack run android || weexpack run web
  1. 打包Apk文件
weex build android || weex build ios

weexpack build android || weexpack build ios

Weex使用问题

一、样式问题
1. 不支持简写,类似margin: 1px 1px 1px 1px; 是不支持的

2. Android下的view标签是有白色默认颜色的, Ios则无

3. weex使用750 * 1334 作为适配尺寸, 实际渲染时由于浮点数的误差可能会存在几个px的误差,出现细线等样式问题,可通过加减几个px来解决

4. css嵌套的写法会导致样式失效,即使使用了预处理器

5. box-shadow仅支持ios

6. 只支持px写法

7. 在weex中,flexbox是唯一的布局模式,所以你不需要手动添加display: flex

8. weex不支持z-index设置元素层级关系,但靠后的元素层级更高

9. 不支持percentage单位,如50%
二、本地开发问题
1. 快速启动项目后,会自动在浏览器上打开项目地址,但是windows用户可能无法自动打开,究其原因是链接地址后面有一个字符'|',使得open插件执行异常;
        
解决办法:手动打开地址或者将'|'更改为运行系统能识别的字符,例如'%'等等
三、虚拟机问题
1. Android虚拟机安装完成后无法打开,问题可能是你电脑BIOS设置中的Inter Virtual Technology 没有打开,进入BIOS中将其打开即可
四、打包APK文件问题
前提:升级到 Android Gradle-Plugin 3.0 + Gradle 4.0 

1. Warning:Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'

    app -> build -> build.gradle ->将compile替换为api即可,换成api后记得加入javaCompileOptions配置,否则就会出现2中所示问题

2. Annotation processors must be explicitly declared now

    app -> build -> build.gradle -> defaultConifg中加入 javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } }

3. Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=debug, filters=[]}} of type com.android.build.gradle.internal.api.ApkVariantOutputImpl.

    原来用来重命名打包后的apk方法不能用了,使用如下方法即可

    app -> build -> build.gradle -> 
    
     applicationVariants.all { variant ->
        variant.outputs.all {
            outputFileName = "weex-test.apk"
        }
    }

建议:如果使用weex打包出现问题,找不到原因,可以使用android studio进行打包。错误直接可以定位到具体的文件,并且易排查!

目录
相关文章
|
7天前
|
IDE Android开发 iOS开发
探索Android与iOS开发的差异:平台选择对项目成功的影响
【9月更文挑战第27天】在移动应用开发的世界中,Android和iOS是两个主要的操作系统平台。每个系统都有其独特的开发环境、工具和用户群体。本文将深入探讨这两个平台的关键差异点,并分析这些差异如何影响应用的性能、用户体验和最终的市场表现。通过对比分析,我们将揭示选择正确的开发平台对于确保项目成功的重要作用。
|
4天前
|
开发框架 移动开发 Android开发
安卓与iOS开发中的跨平台解决方案:Flutter入门
【9月更文挑战第30天】在移动应用开发的广阔舞台上,安卓和iOS两大操作系统各自占据半壁江山。开发者们常常面临着选择:是专注于单一平台深耕细作,还是寻找一种能够横跨两大系统的开发方案?Flutter,作为一种新兴的跨平台UI工具包,正以其现代、响应式的特点赢得开发者的青睐。本文将带你一探究竟,从Flutter的基础概念到实战应用,深入浅出地介绍这一技术的魅力所在。
21 7
|
7天前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台解决方案
【9月更文挑战第27天】在移动应用开发的广阔天地中,安卓和iOS两大操作系统如同双子星座般耀眼。开发者们在这两大平台上追逐着创新的梦想,却也面临着选择的难题。如何在保持高效的同时,实现跨平台的开发?本文将带你探索跨平台开发的魅力所在,揭示其背后的技术原理,并通过实际案例展示其应用场景。无论你是安卓的忠实拥趸,还是iOS的狂热粉丝,这篇文章都将为你打开一扇通往跨平台开发新世界的大门。
|
4天前
|
缓存 Java Linux
探索安卓开发:从新手到专家的旅程
【9月更文挑战第30天】在这篇文章中,我们将一起踏上一段激动人心的旅程,探索安卓开发的广阔世界。无论你是刚入门的新手,还是希望提升技能的开发者,本文都将为你提供宝贵的知识和指导。我们将深入探讨安卓开发的基础知识、关键概念、实用工具和最佳实践,帮助你在安卓开发领域取得更大的成功。让我们一起开启这段精彩的旅程吧!
|
5天前
|
监控 安全 Java
Kotlin 在公司上网监控中的安卓开发应用
在数字化办公环境中,公司对员工上网行为的监控日益重要。Kotlin 作为一种基于 JVM 的编程语言,具备简洁、安全、高效的特性,已成为安卓开发的首选语言之一。通过网络请求拦截,Kotlin 可实现网址监控、访问时间记录等功能,满足公司上网监控需求。其简洁性有助于快速构建强大的监控应用,并便于后续维护与扩展。因此,Kotlin 在安卓上网监控应用开发中展现出广阔前景。
9 1
|
9天前
|
存储 开发工具 Android开发
使用.NET MAUI开发第一个安卓APP
【9月更文挑战第24天】使用.NET MAUI开发首个安卓APP需完成以下步骤:首先,安装Visual Studio 2022并勾选“.NET Multi-platform App UI development”工作负载;接着,安装Android SDK。然后,创建新项目时选择“.NET Multi-platform App (MAUI)”模板,并仅针对Android平台进行配置。了解项目结构,包括`.csproj`配置文件、`Properties`配置文件夹、平台特定代码及共享代码等。
|
8天前
|
搜索推荐 前端开发 Android开发
安卓开发中的自定义视图:打造个性化用户界面
【9月更文挑战第26天】在移动应用开发的广阔天地中,定制性是提升用户体验的不二法宝。本文将带你深入了解安卓开发中自定义视图的魅力所在,通过简洁明了的语言和直观的代码示例,展示如何从零开始创建属于自己的控件,让你的应用界面与众不同。
|
5月前
|
移动开发 安全 Android开发
构建高效Android应用:Kotlin协程的实践与优化策略
【5月更文挑战第30天】 在移动开发领域,性能优化始终是关键议题之一。特别是对于Android开发者来说,如何在保证应用流畅性的同时,提升代码的执行效率,已成为不断探索的主题。近年来,Kotlin语言凭借其简洁、安全和实用的特性,在Android开发中得到了广泛的应用。其中,Kotlin协程作为一种新的并发处理机制,为编写异步、非阻塞性的代码提供了强大工具。本文将深入探讨Kotlin协程在Android开发中的应用实践,以及如何通过协程优化应用性能,帮助开发者构建更高效的Android应用。
|
5月前
|
API 调度 Android开发
打造高效Android应用:探究Kotlin协程的优势与实践
【5月更文挑战第27天】在移动开发领域,性能优化和响应速度是衡量应用质量的关键因素。随着Kotlin语言的普及,协程作为其核心特性之一,为Android开发者提供了一种全新的并发处理方式。本文深入探讨了Kotlin协程在Android应用开发中的优势,并通过实例演示如何在实际项目中有效利用协程提升应用性能和用户体验。
|
5月前
|
移动开发 Android开发 开发者
构建高效Android应用:探究Kotlin协程的优势与实践
【5月更文挑战第21天】在移动开发领域,性能优化和流畅的用户体验是至关重要的。随着Kotlin语言在Android平台的广泛采纳,其并发处理的强大工具—协程(Coroutines),已成为提升应用响应性和效率的关键因素。本文将深入分析Kotlin协程的核心原理,探讨其在Android开发中的优势,并通过实例演示如何有效利用协程来优化应用性能,打造更加流畅的用户体验。
59 4
下一篇
无影云桌面