什么是在phonegap中等效的Android的<instrumentation>标签

时间:2018-01-24 13:10:28

标签: android ios cordova phonegap instrumentation

我们需要在其中一个phonegap应用中启用instrumentation。给定的链接显示了如何为Android原生应用程序启用它,但我无法弄清楚如何在phonegap应用程序上完成相同的操作。有没有办法将它添加到config.xml?如果有一种方法可以用于Android和iOS,还是我们需要做一些额外的事情才能在iOS中启用检测?

PS:我知道会有标准的评论,比如分享您的代码。但遗憾的是,我目前没有任何代码可供分享,因为我不知道如何将其翻译为config.xml

1 个答案:

答案 0 :(得分:0)

  

有没有办法将其添加到config.xml

这很简单:使用最新版本的Phonegap / Cordova,您只需在<config-file>中插入config.xml块,例如:

<platform name="android">
    <config-file target="AndroidManifest.xml" parent="/manifest">
        <instrumentation android:functionalTest="false"
             android:handleProfiling="true"
             android:icon="drawable resource"
             android:label="string resource"
             android:name="com.example.project.Instrumentation"
             android:targetPackage="com.example.myApp"
             android:targetProcesses="*" />
    </config-file>
</platform>

然而,核心Phonegap(Cordova)框架本身没有内置的检测功能,因此您必须自己编写Instrumentation类的本机Android实现。 这最好包含在一个Phonegap插件中,该插件将包含您的自定义Java类,<config-file>块将进入plugin.xml。 有关详细信息,请参阅Plugin Development Guide

  

如果有一种方法适用于Android和iOS,或者我们是否需要做一些额外的工作才能在iOS中启用检测?

<instrumentation>标记和关联类是特定于Android平台的,因此需要不同的iOS特定实现;关于那个,我不知道: - )

如果您正在寻找开箱即用的解决方案,我相信有一些现有的插件,例如dynatrace-cordova-plugin,可以在Javascript级别提供某种检测。