问题标签 [device-owner]

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 投票
3 回答
2740 浏览

google-play - 通过 Android Management Api 或设备所有者 locktask 开发 Cosu 应用程序

我必须为我的企业设备实施一次性应用程序,其中只有一个主要的 android 应用程序本身可以使用 2-3 个其他应用程序,如通话、短信和谷歌地图,除了该用户不能使用或访问其他应用程序和设置,

1)我通过企业管理 API 考虑了企业拥有的单一用途,它更复杂、更大,但更完整的解决方案。

2) 我已经 使用一个 看起来更像是我的解决方案的 android 设备所有者应用程序实现并测试了示例 Lock 任务,但是有一个问题

如何为生产级设备配置设备所有者?对于我的测试,我能够使用 adb shell 命令进行配置。我知道设备必须是新的/重置和未配置的,这不是问题。

我在这里寻求一些建议,如果有人实施它会有所帮助。

更新

Fred 建议的 android management Api QuickStartGuide似乎是正确的方法。我的策略是来自自定义启动器的多个应用程序 现在我陷入了一种情况,我想发布我的启动器应用程序或其他应用程序以仅为我的企业播放商店。

我已关注将您自己的应用程序上传到 Google Play 商店,这导致我发布了私有应用程序,但我无法这样做,因为我没有获得限制分发选项。

我不知道如何完美地实现这一点。对于我目前的政策和企业,我有 2 个有效的电子邮件 ID,

第一个 email_1 是连接到初始项目的那个, 项目所有者帐户并且

所有 google api 调用都是在 email_1 下完成的 在此处输入图像描述

另一个是 email_2 一个是企业管理员 企业管理员

并连接到托管的 Google Play 商店。托管 Play 商店管理员

email_1 和 email_2 都具有对我公司开发人员帐户的管理员访问权限 发布应用帐户

现在我需要弄清楚仅为我的企业发布应用程序,我认为存在正确权限或其他问题,需要帮助。谢谢

0 投票
2 回答
597 浏览

android - 为一次性设备构建应用程序

我已经测试了来自谷歌的企业拥有的一次性 (COSU)代码的构建应用程序,用于单个应用程序用例,其中将有一个应用程序锁定在屏幕上。它运行良好,但应用程序需要是设备所有者才能使用 lockTask。出于测试目的,我使用了不能用于​​生产的 adb shell 命令,我如何管理生产的配置过程?

0 投票
0 回答
841 浏览

android - 如何关闭“屏幕固定”和“已启用 Kiosk 模式”对话框?

背景:
我正在制作一个在 Kiosk 模式下运行的应用程序(通过使应用程序成为设备所有者来启用)。该应用程序仅供我使用,不会在 Google Play 上提供。

问题:
当我打开 Kiosk 模式时,它会在对话框中显示“已固定屏幕”和“已启用 Kiosk 模式”,每个持续 3 秒。当我关闭 Kiosk 模式时,它会在每个持续 3 秒的对话框中显示“屏幕取消固定”和“Kiosk 模式已禁用”。当应用程序需要连续多次切换 Kiosk 模式时,仍然会显示所有对话框。因此,如果切换 5 次,则将有 30 秒的对话(2 条消息 * 3 秒 * 5 次 = 30 秒)。如何关闭这些对话框?

额外信息:
应用需要切换 Kiosk 模式的原因是,当它首次打开时,它会询问用户访问 USB 设备的权限。当屏幕固定时,Android 不会显示此请求,并且它不会记住我在下次重新启动平板电脑时授予了权限(即使我选中了询问我是否希望它记住的框)。因此,必须暂时禁用此对话框的 Kiosk 模式。

我尝试在应用设置中关闭所有通知。这确实摆脱了“Kiosk Mode enabled/disabled”对话框(不是“Sceen Pinned/Unpinned”),但它也摆脱了我为应用程序制作的对话框。所以这不起作用。

0 投票
1 回答
609 浏览

android - 使用代码设置设备所有者不起作用

Runtime.getRuntime().exec("dpm set-device-owner com.integral.kiosk.kioskapp/.receivers.MyDeviceAdminReceiver");

没有在 Android 模拟器 Nexus 6 OS Android 8 中设置设备所有者。但是当使用 adb shell 命令时它工作正常。

附上我在 oncreate 函数中使用的代码。

请帮忙。提前致谢

0 投票
3 回答
1331 浏览

java - Android TV Box 上的设备所有者无法正常工作

我想将我的应用程序作为设备所有者安装在 Android TV Box 上,但出现下一个异常。

设备上没有帐户。它适用于我的手机,但不适用于 Android TV Box。

0 投票
1 回答
1038 浏览

android - 如何获得 SET_TIME 权限

我正在开发一个设备所有者应用程序。在应用程序中,我试图通过以下方式获得 SET_TIME 权限:

但是这种方法行不通?请帮忙!

0 投票
0 回答
526 浏览

android - 为配置设备自定义设置向导

我正在开发 MDM/EMM 应用程序,这需要我修改/绕过默认的 google 设置向导来配置设备(如果它在我们的服务器上注册)。

我的逻辑如下:-

1 - 在 ROM 中添加 MDM apk 作为系统应用程序
2 - 在 google 设置向导之前启动我的应用程序的活动,以检查设备是否已在我的服务器上注册。
3 - 如果注册我们会配置设备,否则我们会关闭我们的活动并允许谷歌设置向导继续

这种方法面临的问题 -

在实施基于 WiFi 的检查期间,我们遇到了困难——为了检查注册,我们必须强制用户连接到互联网。

但在 WiFi 扫描期间,所有设备上的结果都是空的。设置向导完成后运行相同的 WiFi 扫描代码。

在 Google 设置向导完成之前,是否有一种特殊的方式来扫描 WiFi?

我使用的代码如下: -

遗憾的是,“mWifiManager.getScanResults()”在 Google 设置向导完成之前运行时会返回一个空列表。在 google 设置向导完成后,此相同的代码将返回所有可用的 WiFi 列表。

如果谷歌设置完成,我们无法配置设备,因此必须在此之前进行配置检查:(

0 投票
1 回答
975 浏览

android - dpm set-device-owner 在 Redmi Note 4 中不起作用

我正在尝试制作一个应用程序设备管理员,因为我正在关注开发设备管理应用程序
并且当我尝试运行以下命令时
./adb shell dpm set-device-owner com.example.app/.receiver.AdminReceiver

它给出了 SecurityException

任何人都可以帮助解决这个问题,我已经从手机中删除了所有帐户。我用的是红米note 4手机

0 投票
1 回答
1787 浏览

xamarin.android - 如何从 Xamarin.Android 应用程序执行 Adb shell 命令

我想使用我需要执行以下命令的设备策略管理器使我的应用成为设备所有者:

这可以在模拟器运行时找到,并且该命令是从命令行命中的。

但我想以编程方式执行此操作,我尝试过这种方式:

但这不起作用。根据文档,我在 UiAutomation 下找到了一个方法ExecuteShellCommand,但不知道如何使用这个方法。有人可以帮忙吗?

0 投票
2 回答
7146 浏览

android - 从 android 终端禁用设备所有者应用程序

好吧,我的问题是:我有一个应用程序被设置为设备的设备所有者(在这种情况下是我的平板电脑)。我是从 Ubuntu 的终端完成的,将平板电脑连接到我的 PC 并在 adb shell 中执行此行:

所以,我想在不恢复设备的情况下禁用设备所有者应用程序,只需执行类似于最后一行的行。我和我的同事已经研究了很长时间,我们从来没有发现任何关于这个的东西,所以我想知道这是否可能,如果是,如何做到这一点。

谢谢!