文章目录

  • 一、在 VirtualApp 工程下创建 Module
  • 二、添加依赖
  • 三、启动 VirtualApp 插件引擎
  • 四、博客源码

一、在 VirtualApp 工程下创建 Module


在 【Android 插件化】VirtualApp 编译运行 ( VirtualApp 简介 | 配置 VirtualApp 编译环境 | 编译运行 VirtualApp 官方示例 ) 博客的前提下 , 创建 Module ;

开发环境配置参考上面博客的环境 , Android Studio 3.0 , Android NDK r10e , Gradle 版本 4.1 , Gradle 插件版本 3.0.1 ;

远程仓库 :

        jcenter()google()mavenCentral()

创建 Module : 选择 " 菜单栏 / File / New / New Module… " 选项 ;

选择创建 " Phone & Tablet Module " 类型的 Module ;

设置 Module 名称 , 注意 Module 路径不能超过 100 字符 ; 参考 【错误记录】Android Studio 创建报错 ( The length of the module location exceeds the limit of 100 characters. ) ;

选择创建 Activity ;

配置 Activity ;

这是 Android Studio 首次创建 Module , 需要安装一些组件 ;

二、添加依赖


直接使用 VirtualApp 的 lib 依赖库 ;

dependencies {implementation project(':lib')
}

三、启动 VirtualApp 插件引擎


在 Application 中的 attachBaseContext 方法中 , 执行如下代码 , 启动 VirtualApp 插件引擎 ;

        try {VirtualCore.get().startup(base);} catch (Throwable e) {e.printStackTrace();}

完整代码如下 :

package com.example.myapp;import android.app.Application;
import android.content.Context;import com.lody.virtual.client.core.VirtualCore;public class VApp extends Application {private static VApp gApp;public static VApp getApp() {return gApp;}@Overrideprotected void attachBaseContext(Context base) {super.attachBaseContext(base);try {VirtualCore.get().startup(base);} catch (Throwable e) {e.printStackTrace();}}@Overridepublic void onCreate() {gApp = this;super.onCreate();}
}

四、博客源码


GitHub : https://github.com/han1202012/VirtualApp

CSDN : https://download.csdn.net/download/han1202012/33217276

【Android 插件化】VirtualApp 接入 ( 在 VirtualApp 工程下创建 Module | 添加依赖 | 启动 VirtualApp 插件引擎 )相关推荐

  1. 【鸿蒙 HarmonyOS】界面跳转 ( Page Ability 的 action 标识 | Page Ability 之间的界面跳转及传递数据 | 鸿蒙工程下创建 Module | 代码示例 )

    文章目录 一.Page Ability 的 action 标识 二.Page Ability 之间的界面跳转及传递数据 三.鸿蒙工程下创建 Module 四.代码示例 五.执行效果 参考文档 : Pa ...

  2. 如何将「插件化」接入到项目之中?

    本期移动开发精英社群讨论的主题是「插件化」,上网查了一下,发现一篇 CSDN 博主写的文章<Android 使用动态加载框架DL进行插件化开发>.此处引用原作者的话: 随着应用的不断迭代, ...

  3. 1、IDEA中如何在一个工程下创建多个模块

    文章目录 前言 一.步骤 1.先创建一个空的工程 2.再创建模块(Module) 总结 IDEA中工程和模块之间的区别: 前言 既然是在一个工程下创建多个模块,毋庸置疑,肯定先创建一个工程(Proje ...

  4. 怎样将「插件化」接入到项目之中?

    本期移动开发精英社群讨论的主题是「插件化」,上网查了一下,发现一篇 CSDN 博主写的文章<Android 使用动态载入框架DL进行插件化开发>.此处引用原作者的话: 随着应用的不断迭代, ...

  5. 360 RePlugin插件化-项目接入

    RePlugin是一套完整的.稳定的.适合全面使用的,占坑类插件化方案,由360手机卫士的RePlugin Team研发,也是业内首个提出"全面插件化"(全面特性.全面兼容.全面使 ...

  6. android插件化之路

    概论 插件式开发通俗的讲就是把一个很大的app分成n多个比较小的app,其中有一个app是主app.基本上可以理解为让一个apk不安装也可以被运行.只不过这个运行是有很多限制的运行,所以才叫插件. 其 ...

  7. Android APP热更新中的插件化(Hook技术:反射或动态代理),Demo (2)

    修改AAPT,资源分区,用于Android插件化- https://github.com/BaoBaoJianqiang/AAPT -- Android下的挂钩(hook)和代码注入(inject) ...

  8. 微店 Android 插件化实践

    随着微店业务的发展,App 不可避免地也遇到了 65535 的大坑.除此之外,业务模块增多.代码量增大所带来的问题也逐渐显现出来.模块耦合度高.协作开发困难.编译时间过长等问题严重影响了开发进程.在预 ...

  9. android插件化原理

    最近几年移动开发业界兴起了「 插件化技术 」的旋风,各个大厂都推出了自己的插件化框架,各种开源框架都评价自身功能优越性,令人目不暇接.随着公司业务快速发展,项目增多,开发资源却有限,如何能在有限资源内 ...

最新文章

  1. python-os创建文件夹-create_dir_if_not_exist.py
  2. 单个下拉框数据保持问题
  3. 简化 Pod 故障诊断:kubectl-debug 介绍
  4. Javascript 获取和设置日期
  5. 【原】push过快的错误 (Pushing the same view controller instance more than once is not supported)...
  6. waterdrop连接inceptor
  7. 基于UNITY引擎开发的游戏源码修改方法
  8. flutter的PDF阅读器
  9. 网络机顶盒可以直接刷linux吗_卡盟刷钻平台免费刷-上海装修报价
  10. python 下载安装 教程
  11. maven 使用assembly 进行打包
  12. Redis入门完整教程:CacheCloud是什么?
  13. 计算机应用专业毕业设计模板,计算机应用毕业论文模板范文
  14. CentOS 6 修改FTP默认端口号
  15. 品致高频电流探头的主要特点和连接示波器
  16. 怎么把照片背景变成蓝色
  17. Sitecore 8.2 防火墙规则的权威指南
  18. asp.net留言板管理源代码
  19. Android开发以来所记载最全的有关项目的网址
  20. 桌面的回收站或IE图标不见后的解决办法

热门文章

  1. 最新网络安全工程师从入门到精通学习_网络安全入门
  2. 暗影精灵8 安装ubuntu 问题汇总
  3. 字节青训营Go语言学习第一天--基础语言+实战案例
  4. 超薄、散热、柔性 LED贴膜屏发展及产业趋势发展
  5. oracle asp.net上传 下载 文件大小只有32kb,asp默认上传大小
  6. vue+elementUI实现的日期选择组件
  7. 写一个函数,判断year是不是闰年。
  8. 两位一体数码管引脚图_两位一体数码管 两位一体数码管全新现货
  9. OOAD实验六教务管理系统设计之状态机图
  10. python编辑器手机版-QPython,一个在手机上运行Python的神器