Unity3d 开发Pico4程序闪退弹窗【版权保护】检测的解决方法
前言
最近在进行基于Pico4的应用开发,然后在部分设备上程序是无法正常进入的,而且总是弹出这个版权保护的窗口:
按理说正常的自己开发的测试的程序不应该有这种限制,查询后发现是
PICO 内置了版权保护机制。应用上架后,只有获得权限的用户设备才可正常使用应用。在应用调试阶段,可使用 PICO Unity Integration SDK 提供的用户权限校验模拟功能,避免启动应用时报错。使用该功能前,须取得应用 ID(app ID)和设备序列号(SN 码)。
解决方法
注意这里的解决方法是去除用户授权检查和授权检查模拟+设备序列号(SN 码)的方式,不是破解Pico的版权认证,仅适用于自己开发的程序不进行版权检测的情况。
去除用户授权检查
这种方式是直接彻底的,意思是任何设备安装了你的apk都能运行,直接不进行版权检测了,这个的风险就是你的应用程序的apk泄露了,所有人都可以使用。
从Unity3d的上方菜单栏处,点击选择 PXR_SDK > Platform Settings。Inspector 窗口中显示用户权限校验相关配置项。
直接取消勾选User Entitlement Check:
授权检查模拟
这个方式就是要讲设备的(SN 码)进行绑定。优点是限制了公司的设备(绑定了的设备)可以运行,其它的会弹出版权保护,这样就不会进行传播,有一定的保护作用(未破解时)。缺点是增删设备都要重新打包安装。
这个的操着是在上面的用户权限校验相关配置项窗口中:
勾选 User Entitlement Check,并需要在 App ID 字段处,输入应用 ID(这个参照你注册的开发者账号中查找),勾选 Entitlement Check Simulation。点击 Device SN 配置项处的 “+” 或者直接写入设备的数量,添加一个或多个项目。在 单个项目处,填入后续运行应用的设备的序列号:
设备的序列号的获取可以在Pico设备内查看: 设置 > 通用 查看设备序列号。
也可以通过Unity的Build Settings的RunDevice内查看(序列号是括号内的字母和数字):