@bnotebook bnotebook released this Nov 16, 2018

Assets 2

replugin-host-lib

Breaking Changes 核心改动

1.针对Replugin的性能做了大量的优化。
2.部分代码逻辑重构。
3.Replugin相关的ANR率下降98%,秒级以上的卡顿问题基本消除。

Main Changes 主要更新

一键上传多个库到jcenter()
一键使用当前最新版本编译所有的Sample
一套脚本管理所有源码库和Sample中的版本号

Bug Fixes 修复错误

@bnotebook bnotebook released this Aug 10, 2018 · 19 commits to master since this release

Assets 2

replugin-host-lib

Breaking Changes 核心改动

  • (#632) Adaptation to Android P related modifications - @buyuntao

解决Android P(Android 9.0)相关适配问题,全面支持Android P(Android 9.0)正式版。

Bug Fixes 修复错误

@cundong cundong released this Feb 24, 2018 · 69 commits to dev since this release

Assets 2

replugin-host-lib

Breaking Changes 核心改动

  • (#506)No longer Override PluginContext's getDatabasePath method - @cundong

为了适配 Android 8.1 及后续版本,PluginContext#getDatabasePath() 方法不再重写,因此,在开发中,需要各插件之间约定,防止出现重名数据库。

  • (#507)Improve the FileLock's used when loading plugin. - @cundong

在多进程加载多个插件时,所有元素都需要做到进程隔离

适配 Android O 的 odex 文件目录变化

  • (#497)Optimize the clone operation of the PluginInfo object - @SkyEric

优化了 PluginInfo 类的 clone( )实现,完善了插件升级,同版本覆盖,卸载等逻辑

  • (#499) Optimize the plugin to continuously upgrade 2 or more versions - @SkyEric

处理了“某插件连续性升级N次”这个场景。

Main Changes 主要更新

replugin-plugin-lib

Main Changes 主要更新

将插件 lib 中的 PluginInfo 对象与宿主 lib 同步

replugin-sample

增加了在插件中使用 Notification 的示例

@cundong cundong released this Jan 23, 2018 · 73 commits to dev since this release

Assets 2

replugin-host-lib

Breaking Changes 核心改动

ART虚拟机,首次加载插件时提速(可选功能,默认关闭,后续会继续迭代)

支持在插件中使用PreferenceActivity

Main Changes 主要更新

Bug Fixes 修复错误

  • (#400) 修复返回插件列表信息重复的BUG - @cundong

replugin-plugin-gradle

Main Changes 主要更新

replugin-plugin-lib

Main Changes 主要更新

支持在插件中使用PreferenceActivity

  • (#379) Add getVersion, dump Api for plugin project - @cundong

Bug Fixes 修复错误

  • **(#384) 修复因CancellationSignal引起的,在Android 4 上的崩溃- @ChrisCheng4j

replugin-sample

增加了一个基础功能插件-weiview插件,大家可以参照该插件,自己封装「用户中心」「登录」「网络」「加密协议」「数据打点」等基础插件,实现独立开发,独立升级。

增加Fresco的最佳使用示例,详情参考:Fresco在RePlugin中的最佳实践

完善Fragment使用示例。

  • (#464) Add sample of jumping from plugin to host - @cundong

@cundong cundong released this Sep 25, 2017 · 155 commits to dev since this release

Assets 2

replugin-host-lib

Breaking Changes 核心改动

  • (#350) Adapter to Android O's All-Of-the-Time Compilation - @cundong

适配Android O 的“全时段的编译”(All-Of-the-Time compilation)

支持通过 RePlugin.dump() 接口来dump详细的运行时信息,包括:

  1. 通过 RePlugin 运行起来的,插件中的Service 信息;
  2. 当前完整的 Activity 坑位映射表;
  3. 当前被运行起来的插件列表;

Main Changes 主要更新

Bug Fixes 修复错误

  • (#359) Samsung Android 5.0 5.1, When according to the volume button, Crash - @cundong

@jiongxuan jiongxuan released this Aug 23, 2017 · 154 commits to master since this release

Assets 2

replugin-host-lib

Breaking Changes 核心改动

  • (#296) Support "UI process" as a plug-in management process - @jiongxuan

支持以“UI进程”作为插件管理进程。换言之,可以做到“仅一个进程”就能开启插件。有关“插件管理进程”的详述,请点击这里查看《插件的管理》中“插件管理进程”一节

补充:在RePlugin 2.1.7及以前版本,必须要开启“两个进程”(分别为当前进程和“常驻进程”),这也是出于性能和插件管理角度考虑。如今仅需要一个进程即可。

  • (#264) Support multidex feature in plugin application for the ROM below LOLLIPOP - @wangfuda

完美支持 Android 4.4 及以下的插件的MultiDex(分包技术)的支持。

补充:主程序MultiDex一直都是“天然支持的”。而在RePlugin 2.1.7及以前版本,仅支持 Android 5.0 及以上版本的插件的MultiDex

  • (#288) Support for dynamically assign plugin's custom processes - @cundong

支持“动态分配进程坑位”方案,无需“填写Meta-data来分配进程”即可。有关进程坑位的信息,请参见《插件的组件》中“多进程坑位”一节

补充:在RePlugin 2.1.7及以前版本,常驻进程名不能修改,只可以为“[主程序包名]:GuardService”。从该版本开始,不仅可以修改常驻进程名,还可以选择“关闭常驻进程”

Main Changes 主要更新

Bug Fixes 修复错误

  • (#285) Fixed the installation will fail when you install the same version of the plug-in multiple - @jiongxuan
  • (#286) Resolved the issue of "Overwriting the plug-in, it may not be notified to other processes" - @jiongxuan
  • (#294) 解决P-n插件升级为“新插件”的问题 - @kevinfen9

Mirror Changes 精致优化

  • (#279) Set RePluginClassLoader to Thread's ContextClassLoader - @jiongxuan
  • (#302) Modify the number of translucent singleInstance Activity - @cundong
  • (#300) The return value of the fetchViewByLayoutName method is changed to "generic" - @jiongxuan
  • (#284) Remove unused files - @cundong

replugin-host-gradle

Main Changes 主要更新

Mirror Changes 精致优化

  • (#296) Added the PERSISTENT_ENABLE field, and adjust the "android:process" field in host's AndroidManifest - @jiongxuan
  • (#302) Modify the number of translucent singleInstance Activity - @cundong

replugin-plugin-lib

Mirror Changes 精致优化

  • (#290) Added the RePluginCompat class to be compatible with the old host-lib - @jiongxuan
  • (#290) Added RePlugin.fetchResourceIdByName/fetchViewByLayoutName in plugin-lib - @jiongxuan

@jiongxuan jiongxuan released this Aug 2, 2017

Assets 2

replugin-host-lib

Bug fixes

  • (#265) Fixed an ANR issue when using startActivity / startService, resulting in repeated calls to onCreate - @jiongxuan

Mirror changes

  • (#269) Adjust the package of the host's tools class - @cundong

replugin-plugin-gradle

Bug fixes

  • (#263) Fixed AAR complied from build-cache can't be injected by plugin-gradle - @wangfuda

@jiongxuan jiongxuan released this Jul 27, 2017 · 254 commits to dev since this release

Assets 2

replugin-host-lib

Main changes

  • (#224) Replace the referenced Apache libraries(IO/Lang3 and etc.) with RePlugin's own - @jiongxuan
  • (#241) Support "package name" and "alias" to use plugin - @jiongxuan
  • (#238) Support "startActivity()" in the plug-in's Application - @jiongxuan

Bug fixes

  • (#231) Fixed a checkDynamicClass bug when startActivity - @erhu
  • (#243) Fixed an issue that could cause a crash when opening an Activity in Intent-Filter mode - @jiongxuan
  • (#243) Fixed an issue where the "P-n" plugin was incorrectly changed when the built-in plugin was released, resulting in the loss of "package name" information - @jiongxuan

Mirror changes

  • (#229) Plug-in installation: According to APK file name, to decide which kind of solution will be used - @jiongxuan
  • (#238) Support "startActivity(intent, options)" - @jiongxuan
  • (#229) Added unregisterHookingClass method - @jiongxuan
  • (#229) Some code refactoring (PluginCommImpl/PluginLibraryPorxy/Log's) - @jiongxuan

replugin-host-gradle

Main changes

Bug fixes

  • (#223) resolve the problem that config doesn't update when remove the config closure in build.gradle & sync it - @wangfuda

replugin-plugin-lib

Mirror changes

replugin-plugin-gradle

Main changes

Bug fixes

  • (#242) Resolved if the "Unzip" an empty file, it will compile failed (especially in Tencent's Bugly) - @jiongxuan

Mirror changes

  • (#212) Optimize a piece of code and repair one bug about compatibility of path separators for window and Linux - @wangfuda

@jiongxuan jiongxuan released this Jul 27, 2017 · 316 commits to dev since this release

Assets 2

replugin-host-lib

  • (#199) Added "Same version installation"(支持“同版本覆盖”安装) - @SkyEric
  • (#199) Optimize uninstall for synchronizing multiple process - @SkyEric

replugin-host-gradle

replugin-plugin-gradle

@jiongxuan jiongxuan released this Jul 27, 2017 · 339 commits to dev since this release

Assets 2

replugin-host-lib

  • Fix metaData might be null when parseFromPackageInfo called - @jiongxuan
  • Fix '.so' files not release when install plugin - @erhu
  • Close verify Signature by default - @jiongxuan
  • Merge DefaultRePluginCallbacks to RePluginCallbacks - @jiongxuan
  • Move some event callbacks(onPrepareAllocPitActivity and etc.) to RePluginEventCallbacks - @jiongxuan
  • Add the uninstall plugin broadcast - @wangyupeng1-iri

replugin-plugin-gradle

  • Compat for Instant Run - @lizhangqu & @erhu
  • Using reflection to access internal field and fix crash in Windows system - @goodev