【问题标题】:Xamarin.Android and user downloadable executable code (.dll)Xamarin.Android 和用户可下载的可执行代码 (.dll)
【发布时间】:2018-11-11 22:08:08
【问题描述】:

我对恶意行为政策的这一要点有疑问。

  • 从 Google Play 以外的来源下载可执行代码(例如 dex 文件或本机代码)的应用或 SDK。

    如果用户可以使用应用程序从 NuGet 库下载和运行 .NET 程序集 (IL),该应用程序是否属于该类别?更具体地说:Xamarin.Android 绑定。
    .NET 程序集本身应属于“JavaScript”类别或“在虚拟机中运行且对 Android API 的访问受限的代码”。

    然而,Android 绑定包含在技术上可能被视为潜在恶意的本机可执行代码。一个简单的例子是下载像“Refractored.GifImageView”这样的本机绑定。这只是一个方便的图书馆。

    该应用程序本身是 C# 的教育工具。它在他们的设备上编译和运行用户 C# 代码。

【问题讨论】:

    标签: c# android xamarin.android google-play


    【解决方案1】:

    嗯,这是第一次,基本上恶意行为政策是这样说的

    从 Google Play 以外的来源下载可执行代码(例如 dex 文件或本机代码)的应用或 SDK

    但您似乎缺少的是,当您的应用程序正在下载 exe 即可执行文件时,此策略适用。(强调应用程序)

    现在,当您谈论 nuget 包时,您的应用程序没有下载 nuget 包,它基本上是由 vs 下载的,然后当您制作 apk 时,它会被转换为 Java Android 可执行文件,即 APK 现在这个 apk 没有下载任何内容应用程序已下载并捆绑在其中,因此“恶意行为”政策根本不适用于您的场景。

    希望对你有帮助,如有疑问请回复

    【讨论】:

    • 澄清一下,我不是在问是否可以使用 nuget 包编译和发布应用程序。显然这是肯定的。在这种情况下,可以在运行时下载其他包。所以是的,这是用户发起的应用内下载。
    • 所以基本上你的应用程序是在之后下载 NuGet 包?
    • 是的,完全正确。之后用户可以让应用下载 NuGet 包
    • 好吧,我不确定这是否会使您的应用程序属于该类别,我很可能会说它确实如此,所以我建议您与Google Play Support 联系并询问他们是否您的应用程序是否属于该类别,如果是,那么什么是合适的解决方案,因为我认为没有人可能已经完成了您在这里尝试做的事情。
    • Google 支持可能很难获得,但我想这是唯一可行的选择。还是谢谢
    【解决方案2】:

    我不代表 Google Play 政策,但我认为这极不可能被允许。 Google Play 有此政策来保护 Android 用户免受恶意代码的侵害。让应用程序开发人员将所有代码都放在 APK 中有两个好处:

    • 它允许 Google 的滥用团队在应用发布之前寻找恶意软件,从而保护用户
    • 它可以防止开发人员遇到意外的安全漏洞,在这些漏洞中,被攻击者可能会攻击网络或服务器,并创建任意代码供用户在设备上执行,即使最初的开发人员并没有恶意。应用开发者过去在这方面犯过很多错误。

    在运行时从 NuGet 下载任意包听起来从这两个方面来说都是非常危险的,所以我怀疑 Google Play 政策不允许这样做。

    您是否考虑过新的 Google Play 功能 dynamic delivery 来实现您想要的功能?

    【讨论】:

    • 不知道 Xamarin.Android 是否支持动态交付。
    • 这不是一个选项,因为我只能添加“最受欢迎”的包。即使那样,它也将是数百个具有复杂依赖关系的包(可能还有数百个)。它们必须被压缩以减少额外 apk 的数量,因此用户最终仍会占用太多空间。或更糟糕的是:1 个巨大的 apk,包含所有内容。同样对于这样的应用程序,甚至是脚本/任务应用程序,理论上用户总是可以使用它来下载恶意内容,因此按照这种逻辑,许多应用程序的整个基本概念都是违反的。我从谷歌支持得到的答案基本上是“不知道”
    • 忘了说。 “让应用程序开发人员将所有代码都放在 APK 中”。我,开发人员没有使用 Nuget 包。只有用户在自己的代码中
    猜你喜欢
    • 2021-04-28
    • 1970-01-01
    • 1970-01-01
    • 2015-10-05
    • 1970-01-01
    • 1970-01-01
    • 2021-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多