标签: samsung-knox

java.lang.SecurityException:BLUETOOTH权限崩溃.(仅限三星设备)

我遇到了以下崩溃,但这只发生在一些三星设备上(并非所有,我们在三星设备上开发/测试)

崩溃日志:

java.lang.SecurityException: Need BLUETOOTH permission: Neither user 10025 nor current process has android.permission.BLUETOOTH.
   at android.os.Parcel.readException(Parcel.java:1540)
   at android.os.Parcel.readException(Parcel.java:1493)
   at android.bluetooth.IBluetooth$Stub$Proxy.isEnabled(IBluetooth.java:1156)
   at android.bluetooth.BluetoothAdapter.isEnabled(BluetoothAdapter.java:697)
   at org.altbeacon.beacon.service.scanner.CycledLeScanner.finishScanCycle(CycledLeScanner.java:245)
   at org.altbeacon.beacon.service.scanner.CycledLeScanner.scheduleScanCycleStop(CycledLeScanner.java:234)
   at org.altbeacon.beacon.service.scanner.CycledLeScanner$1.run(CycledLeScanner.java:230)
   at android.os.Handler.handleCallback(Handler.java:739)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at android.os.Looper.loop(Looper.java:145)
   at android.app.ActivityThread.main(ActivityThread.java:5972)
   at java.lang.reflect.Method.invoke(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:372)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
Run Code Online (Sandbox Code Playgroud)

这是我的AndroidManifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.myapp" >


<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<!--
     The following …
Run Code Online (Sandbox Code Playgroud)

java android bluetooth android-permissions samsung-knox

14
推荐指数
1
解决办法
1961
查看次数

NFC设备所有者供应和诺克斯

首先,如果这是一个不适合这个问题的地方,请道歉,因为它不是严格的代码问题,但我在其他地方努力寻找任何相关资源.

我们的解决方案基于使用三星设备(目前为S7s)作为完全受管理的设备,其应用程序注册为"设备所有者",然后管理该产品所需的一些其他文件和应用程序.在工厂重置之后,通过运行自定义应用程序的另一部电话生成NFC消息,通过NFC将其提供给设备.

这些都是独立于任何MDM或EMM系统完成的,设备所有者应用程序由我们的封闭网络上的服务器提供,并且它全部由本机android功能处理,而不是完全涉及knox.

这最初是在运行Android 6.0和Knox 2.7的S7上开发的,并且运行良好.

但是,我们目前正在设置一个复制系统,理想情况下需要与之前的功能完全相同,但我们现在订购的设备配备Android版本8.0和Knox 3.1,这似乎是一些问题的根源.

在第一次尝试通过NFC配置设备之前,过程成功并且设备所有者设置成功,似乎没有任何问题.

然后,当设备出厂时重置以再次测试该过程时,在发送NFC消息后,会立即显示弹出窗口:"无法创建工作配置文件""安全策略阻止创建受管设备,因为自定义操作系统是或已安装在此设备上"

这种情况发生在手机甚至试图连接到网络并下载我们的应用程序之前,所以问题不存在.

这款手机是开箱即用的,在最初配置之前从未设置过,因此实际定制固件的部署机会为零,只是为了理智,我确认Knox保修无效位仍然设置为0x0它是谁.

我知道,从Knox 3.0(?)开始,它与内置的android企业功能更加集成,但我认为它仍然可以在没有使用的情况下使用,理想情况下我想避免不必使用任何不必要的Knox SDK积分.如果我需要通过Knox做一些事情以允许此功能,因为目前设备在一次恢复出厂后基本上没用.

如果有人有任何见解为什么会发生这种情况或如何解决它,那将非常感激.

android provisioning nfc samsung-knox device-owner

9
推荐指数
1
解决办法
537
查看次数

当我在Samsung Knox“硬件访问”上安装并打开示例应用程序时,出现“客户端尚未准备好。”

最近,我正在学习基于三星Knox的Android Studio SDK开发。“硬件访问”是我在其官方网站上下载的示例应用程序。但是,当我尝试在Samsung Phone Galaxy S5上安装时,手机无法打开该应用程序并提示“ Sample2已停止”。Android Studio会打印以下内容:

06/22 08:37:10: Launching app
    No apk changes detected since last installation, skipping installation of C:\workspace\aisino\download-codes\Samsung\Sample2\app\build\outputs\apk\app-debug.apk
    $adb shell am force-stop           com.samsung.android.sdk.b2b.samples.cSDKsample2
    $adb shell am start -n "com.samsung.android.sdk.b2b.samples.cSDKsample2/com.samsung.android.sdk.b2b.samples.cSDKsample2.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
    Client not ready yet..
Run Code Online (Sandbox Code Playgroud)

android android-studio samsung-knox

5
推荐指数
0
解决办法
846
查看次数

Android应用程序在Samsung Knox上切换个人和工作模式时崩溃

我的应用程序每次从Samsung Knox工作模式切换到私有模式时都会被杀死.

亚行日志:

04-25 16:25:41.868 2945-3700/? I/ActivityManager: Killing 24549:com.myapp.name/u100a171 (adj 10): cached #2
04-25 16:25:41.988 2945-3118/? W/InputDispatcher: channel '354a1caa com.myapp.name/com.myapp.name.app (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
04-25 16:25:41.988 2945-3118/? E/InputDispatcher: channel '354a1caa com.myapp.name/com.myapp.name.app (server)' ~ Channel is unrecoverably broken and will be disposed!
04-25 16:25:42.038 2945-3614/? W/InputDispatcher: Attempted to unregister already unregistered input channel '354a1caa com.myapp.name/com.myapp.name.app (server)'
04-25 16:25:42.038 2945-3614/? I/WindowState: WIN DEATH: Window{354a1caa u100 com.myapp.name/com.myapp.name.app}
Run Code Online (Sandbox Code Playgroud)

这种行为可能是什么原因?

这可能与AndroidManifest上的单个任务的定义有关,因为Knox试图在个人模式上重启?

<activity android:launchMode="singleTask" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|uiMode" ...>
Run Code Online (Sandbox Code Playgroud)

由于安装/卸载区域,是否与存储问题有关?

使用Samsung Knox …

android samsung-knox

5
推荐指数
1
解决办法
163
查看次数

在 Jelly Bean 等旧设备上获取 Samsung KNOX api 版本

我有一台装有 Android 4.3 Jelly Bean 的三星 Galaxy Camera 2(它的年龄与三星 Galaxy S3 差不多)。

他们的文档告诉我,在 Jelly Bean 上我可以找到 KNOX Api 级别 5 - 10。

那么,如何找出我实际拥有的 KNOX Api 级别?

  • 我在设置的系统信息页面中找不到它
  • 我还没有找到以编程方式检索它的方法

android version samsung-knox

5
推荐指数
1
解决办法
396
查看次数

三星禁用软件包

我正在尝试为我的公司创建一个 kiosk 模式应用程序,我需要禁用一些默认包以避免用户访问它。我使用的是 Samsung Knox,它在不执行此代码时看起来运行良好。

名单很大:

// Common packages
packages.add("android.googleSearch.googleSearchWidget");
packages.add("com.LocalFota");
packages.add("com.android.MtpApplication");
packages.add("com.android.backupconfirm");
packages.add("com.android.bluetooth");
packages.add("com.android.browser.provider");
packages.add("com.android.calendar");
packages.add("com.android.certinstaller");
packages.add("com.android.chrome");
packages.add("com.android.dreams.basic");
packages.add("com.android.dreams.phototable");
packages.add("com.android.email");
packages.add("com.android.exchange");
packages.add("com.android.facelock");
packages.add("com.android.htmlviewer");
packages.add("com.android.inputdevices");
packages.add("com.android.keychain");
packages.add("com.android.location.fused");
packages.add("com.android.mms");
packages.add("com.android.musicfx");
packages.add("com.android.nfc");
packages.add("com.android.noisefield");
packages.add("com.android.phasebeam");
packages.add("com.android.sharedstoragebackup");
packages.add("com.android.stk");
packages.add("com.android.vending");
packages.add("com.android.vpndialogs");
packages.add("com.android.wallpaper.livepicker");
packages.add("com.google.android.apps.books");
packages.add("com.google.android.apps.magazines");
packages.add("com.google.android.apps.plus");
packages.add("com.google.android.apps.uploader");
packages.add("com.google.android.backup");
packages.add("com.google.android.configupdater");
packages.add("com.google.android.feedback");
packages.add("com.google.android.gm");
packages.add("com.google.android.gms");
packages.add("com.google.android.googlequicksearchbox");
packages.add("com.google.android.marvin.talkback");
packages.add("com.google.android.music");
packages.add("com.google.android.partnersetup");
packages.add("com.google.android.play.games");
packages.add("com.google.android.setupwizard");
packages.add("com.google.android.street");
packages.add("com.google.android.syncadapters.calendar");
packages.add("com.google.android.syncadapters.contacts");
packages.add("com.google.android.talk");
packages.add("com.google.android.tts");
packages.add("com.google.android.videos");
packages.add("com.google.android.voicesearch");
packages.add("com.google.android.youtube");
packages.add("com.infraware.polarisviewer5");
packages.add("com.lifevibes.trimapp");
packages.add("com.monotype.android.font.chococooky");
packages.add("com.monotype.android.font.cooljazz");
packages.add("com.monotype.android.font.droidserifitalic");
packages.add("com.monotype.android.font.rosemary");
packages.add("com.monotype.android.font.samsungsans");
packages.add("com.qualcomm.privinit");
packages.add("com.qualcomm.timeservice");
packages.add("com.samsung.android.app.assistantmenu");
packages.add("com.samsung.android.app.colorblind");
packages.add("com.samsung.android.app.shareaccessibilitysettings");
packages.add("com.samsung.android.service.travel");
packages.add("com.samsung.android.tripwidget");
packages.add("com.samsung.android.widgetapp.briefing4x2");
packages.add("com.samsung.app.playreadyui");
packages.add("com.samsung.everglades.video");
packages.add("com.samsung.helphub");
packages.add("com.samsung.klmsagent");
packages.add("com.samsung.scrc.idi.server"); …
Run Code Online (Sandbox Code Playgroud)

service android android-package-managers samsung-mobile samsung-knox

4
推荐指数
1
解决办法
9804
查看次数

权限拒绝:pm命令的runUninstall from要求以用户-1的身份运行,但正在从用户0调用;

我只是将我的Android设备(Samsung J7Pro)升级到9.0(Pie),当我想从Android Studio运行任何应用程序时,我会遇到以下问题:

权限拒绝:pm命令的runUninstall from要求以用户-1的身份运行,但正在从用户0调用;这需要android.permission.INTERACT_ACROSS_USERS_FULL。

我试图添加

INTERACT_ACROSS_USERS_FULL
Run Code Online (Sandbox Code Playgroud)

到我的AndroidManifest.xml,但得到相同的错误。

有什么帮助吗?

debugging permissions android adb samsung-knox

4
推荐指数
1
解决办法
278
查看次数