问题标签 [sonar-android-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
952 浏览

android - Sonar Android Plugin 添加自定义规则

我想在sonar-android-master插件中添加一些自定义规则。

找到了这个答案,但不清楚在哪里以管理员身份登录。

但是在搜索更多时,我得到了这个Extending Coding Rules,它指出不能使用为 android-lint XPath 和 Java 添加自定义规则。

所以请这是我的问题:

  • 是否可以在 sonar-android-plugin 中添加自定义规则?
  • 如果对上述问题的回答是肯定的,那么请向我提供一些关于如何进行的意见?
0 投票
1 回答
986 浏览

android - 如何从另一个应用程序向应用程序添加视图

我的应用程序称为MyNiceApp。MyNiceApp 主要只是一个核心,它加载coreView在 MainActivity 中调用的视图onCreatecoreView由用户根据需要下载的其他插件的视图填充。我在核心视图上定义了可以由插件通过 MyNiceApp 中的接口填充的各个区域。如何从插件加载视图并将其传递到coreView?

有人告诉我RemoteViews是一个不错的选择,但我不知道如何实现它。还有哪些其他选择?

RemoteViews 是最好的方法吗?我愿意尝试任何可行的方法,即使不是最好的方法。一个黑客就可以了。目前,任何可以为该功能提供服务的东西就足够了。以后可以进行改进。

谢谢大家。

更新

我正在考虑将它们托管在我的私人服务器上。它们将被下载到一个名为/data/app/com.myniceapp.plugins的专用文件夹

我认为如果我在 /data/app/com.myniceapp./plugins 下创建一个文件夹,然后让 DexClassLoader 抓取 /data/app/com.myniceapp/plugins 以获取下载的插件,那会更好地组织起来,然后我可以调用我的类实现,并在运行时将插件视图动态加载到核心视图。

临时更新

嗨@lelloman,以及其他所有人。我一直在努力使您的解决方案发挥作用,但到目前为止我一直没有成功。

我创建了一个名为Test View的新项目。它有一个 XML 布局,我尝试将其膨胀并发送到核心视图,如下所示:

但是,这不起作用。这是其余的:

在 MainActivity 视图中,它应该从插件中获取视图:


抽屉布局实施问题更新

嗨@lelloman 再次。我一直在尝试将您的解决方案实施到具有抽屉布局的主要项目中。它在final View toolBarItemsLL = revInfl.inflate(R.layout.activity_main, null, false);.

为什么它不适用于抽屉布局。如果您将Navigation Drawer Activity ( android-plugins/MyNiceApps/app/src/main/: New -> Activity -> Navigation Drawer Activity)添加到其中,那么它就会崩溃。希望你能帮忙。

这是堆栈跟踪:

0 投票
0 回答
86 浏览

android-gradle-plugin - 来自Android中SonarQube的错误“由:org.gradle.internal.exceptions.LocationAwareException”引起

我们得到了上述异常,然后是

在我们的 android 应用程序中解析插件 [id: 'org.sonarqube', version: '2.6.2', apply:false] 时出错。

我们有

minSdkVersion 19

目标SDK版本 23

构建工具版本 27.0.3

和安卓工作室 3.0.1。

您可能已经猜到了,我们的 Sonarqube 插件是 2.6.2。然后应用程序超时并且无法编译。有人可以指点我解决这个问题吗?