使用开发小助手

本文将从接入、启动和卸载三方面向您介绍使用开发小助手相关的信息。

接入开发小助手

为保证功能的完整性和独立性,离线包中心(需先集成 H5 容器及离线包)功能需要以 离线包开发助手 的形式在 mPaaS 插件中单独接入,其余功能通过接入 开发小助手 完成接入。离线包小助手单向依赖开发小助手,离线包开发小助手需要和开发小助手同时接入,开发小助手可以单独接入。

作为开发助手,在最终发布到 App Store 时,需要从应用中移除开发小助手。为节省您的时间,建议您在专门用于测试的 Target 下添加开发小助手。

由于采用不同开发框架时,需要采用不同接入步骤不同。接下来将向您分别介绍在使用 mPaaS 插件和使用 CocoaPods 两种情况下的接入步骤。

使用 mPaaS 插件

前置条件

需保证 mPaaS 基线版本 ≥ 10.1.60。

接入步骤

在插件中选择 开发小助手离线包开发助手dev-plugin

后置条件

在正式发布的时候需要移除开发小助手。更多详情,参见 卸载开发小助手

使用 CocoaPods

前置条件

接入步骤

使用 cocopods-mPaaS 的命令 可以生成如下 Podfile 文件,然后执行 pod install (或 pod update)。

# mPaaS Pods Begin
plugin "cocoapods-mPaaS"
source "https://code.aliyun.com/mpaas-public/podspecs.git"
mPaaS_baseline '10.1.60'  # 请将 x.x.x 替换成真实基线版本
# mPaaS Pods End
# ---------------------------------------------------------------------
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'

target 'DevDemo' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!
  mPaaS_pod 'mPaaS_DevHelper'
  # mPaaS_pod 'mPaaS_NebulaDevHelper'
  # Pods for DevDemo
end

后置条件

在正式发布的时候需要移除开发小助手。更多详情,参见 卸载开发小助手

启动开发小助手

开在 APP 启动完成时,调用 [MPDevHelper start]。 您可以在一个启动过程方法中调用,比如:

#import <MPDevHelper/MPDevHelper.h>

- (void)application:(UIApplication *)application beforeDidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // 开启开发助手
    [MPDevHelper start];
    // ...
}

拓展开发小助手

在实际使用中,您可以根据实际需求,对开发小助手进行功能拓展,功能拓展分为普通插件拓展和注册插件拓展。接下来将分别向您介绍这两种拓展方式。

普通插件拓展

  1. 定义插件。

    实现 MDHPluginProtocol 协议中的 pluginDidLoad 方法。

     @interface MDHNSLogPlugin : NSObject<MDHPluginProtocol>
    
     @end
    
     @implementation MDHNSLogPlugin
    
     - (void)pluginDidLoad
     {
         // 自定义的 MDHNSLogViewController 需要继承 MDHBaseViewController
         MDHNSLogViewController *vc = [[MDHNSLogViewController alloc] init];
         [MPDevHelper openPlugin:vc];
     }
  2. 注册插件。

    MPDevHelper.bundle / MDHPlugins.plist 的 plugins 中注册插件。

    • title:名称。

    • icon:图标。

    • class:实现类。

    • module:所属模块。

  3. MPDevHelper.bundle 中添加插件使用图标 icon 。

  4. 定义插件在开发小助手中显示的位置。

    拓展后的功能会显示在开发小助手的主页上,您可以将拓展功能添加到现有的分类中,也可以新建分类 module 来单独显示拓展的插件。

注册插件拓展

  1. 定义插件。

    实现 MDHInitiatePluginProtocol 协议方法 initiatePluginDidLoad 做初始化。

  2. 注册插件。

    MPDevHelper.bundle / MDHPlugins.plist 的 initiatePlugins 中注册插件。

    • desc:描述。

    • class:实现类。

移除拓展插件

如果要移除某个拓展插件,只需要删掉插件的定义代码,将注册信息从 plist 文件中删除即可。

卸载开发小助手

  • 如果您是在专门用于测试的 Target 中添加的开发小助手,那么开发小助手不会对您的发布产生影响,您可以不用卸载开发小助手。

  • 如果您是在正式发布中使用的 Target 中添加的开发小助手,则需要按照以下两种方式移除开发小助手的库和资源。

    • 通过mPaaS插件移出开发小助手,并删除助手启动代码 [MPDevHelper start]

    • 手动删除以下库和资源 MPDevHelper、MPComponentDiagnose、MPBaseTest、AppDoctor(只有在集成了离线包开发助手时才会引入 AppDoctor)。

在按照以上任一方式移除开发小助手后,再人工确认 framework 和 bundle 中不包含上述的四个库或资源,即说明已成功卸载开发小助手。

阿里云首页 移动开发平台 mPaaS 相关技术圈