Unity3d + 鸟舍。您的硬件不支持此应用程序
Unity3d + Aviary. Your hardware does not support this application
我正在将 Aviary sdk 集成到 Unity3d 游戏中。当我最终设法将我的项目导出到 Android Studio,并完成 Aviary 集成的步骤时,当我 运行 应用程序时,我收到了错误。-
Your hardware does not support this application, sorry!
删除依赖项后一切正常。-
compile 'com.adobe.creativesdk:image:4.6.3'
所以我猜肯定存在任何不兼容问题,但不确定我可以尝试什么或如何开始查找问题。
这些是 Aviary sdk Manifest 和 gradle 文件。-
任何人都可以指出我可以尝试的可能步骤的正确方向吗?
编辑 1
我正在寻找 Aviary 的替代品,以防万一我无法让它工作;试过 img.ly
但不完全是我需要的,因为它只适用于通过相机拍摄的照片。也请阅读 photor
,但 sdk 似乎已不存在。 任何已知的替代品?
编辑 2
这是日志跟踪(刚刚捕获的行提到 com.zuinqstudio.myappname
,因为完整的启动日志有点大)。我猜 'real' 错误一定是在这一行附近。-
com.zuinqstudio.myappname E/Unity: Unable to find main
10-10 10:56:39.511 21556-21556/? I/Timeline: Timeline: Activity_launch_request id:com.zuinqstudio.myappname time:119374845
10-10 10:56:39.521 3522-4285/? D/GameManagerService: identifyGamePackage. com.zuinqstudio.myappname
10-10 10:56:39.521 3522-4285/? D/MultiWindowPolicy: Gamemode - return 0, when calling identifyForegroundApp(com.zuinqstudio.myappname)
10-10 10:56:39.521 3522-4285/? V/WindowManager: addAppToken: AppWindowToken{8babaab token=Token{71144fa ActivityRecord{5435b25 u0 com.zuinqstudio.myappname/.UnityPlayerActivity t40571}}} to stack=1 task=40571 at 0
10-10 10:56:39.521 3522-3685/? D/ISSUE_DEBUG: InputChannelName : 69d423 Starting com.zuinqstudio.myappname
10-10 10:56:39.531 3522-3578/? D/ActivityManager: Launching com.zuinqstudio.myappname, updated priority
10-10 10:56:39.531 3522-3522/? D/GameManagerService: NotifyRunnable. pkg: com.zuinqstudio.myappname, type: 4, isMinimized: false, isTunableApp: false
10-10 10:56:39.581 8316-8316/com.zuinqstudio.myappname W/ResourcesManager: getTopLevelResources: /data/app/com.zuinqstudio.myappname-2/base.apk / 1.0 running in com.zuinqstudio.myappname rsrc of package com.zuinqstudio.myappname
10-10 10:56:39.581 3522-3685/? V/WindowStateAnimator: Finishing drawing window Window{69d423 u0 d0 Starting com.zuinqstudio.myappname}: mDrawState=DRAW_PENDING
10-10 10:56:39.581 8316-8316/com.zuinqstudio.myappname W/ResourcesManager: getTopLevelResources: /data/app/com.zuinqstudio.myappname-2/base.apk / 1.0 running in com.zuinqstudio.myappname rsrc of package com.zuinqstudio.myappname
10-10 10:56:39.581 3522-3649/? D/StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{69d423 u0 d0 Starting com.zuinqstudio.myappname}
10-10 10:56:39.611 8316-8316/com.zuinqstudio.myappname E/Unity: Unable to find main
10-10 10:56:39.621 8316-8316/com.zuinqstudio.myappname I/Unity: splash_mode = 0 (integer)
10-10 10:56:39.621 8316-8316/com.zuinqstudio.myappname I/Unity: useObb = False (bool)
10-10 10:56:39.661 8316-8316/com.zuinqstudio.myappname D/SecWifiDisplayUtil: Metadata value : SecSettings2
10-10 10:56:39.661 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: #1 mView = com.android.internal.policy.PhoneWindow$DecorView{b01d164 V.E...... R.....I. 0,0-0,0}
10-10 10:56:39.661 8316-10196/com.zuinqstudio.myappname D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
10-10 10:56:39.671 3522-4285/? D/ISSUE_DEBUG: InputChannelName : 73a5795 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity
10-10 10:56:39.691 3522-3649/? D/StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{73a5795 u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname D/Activity: performCreate Call Injection manager
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname I/InjectionManager: dispatchOnViewCreated > Target : com.zuinqstudio.myappname.UnityPlayerActivity isFragment :false
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname I/Unity: onResume
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: #1 mView = com.android.internal.policy.PhoneWindow$DecorView{2fcc2ce I.E...... R.....ID 0,0-0,0}
10-10 10:56:39.701 3522-3578/? D/ISSUE_DEBUG: InputChannelName : 9c3a49b com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity
10-10 10:56:39.751 8316-10196/com.zuinqstudio.myappname D/libEGL: loaded /vendor/lib64/egl/libGLES_mali.so
10-10 10:56:39.761 8316-10196/com.zuinqstudio.myappname D/libEGL: eglInitialize EGLDisplay = 0x7f677ff178
10-10 10:56:39.761 8316-10196/com.zuinqstudio.myappname I/OpenGLRenderer: Initialized EGL, version 1.4
[ 10-10 10:56:39.761 8316:10196 D/ ]
ro.exynos.dss isEnabled: 0
10-10 10:56:39.761 8316-10196/com.zuinqstudio.myappname D/mali_winsys: new_window_surface returns 0x3000, [1592x1052]-format:1
10-10 10:56:39.771 8316-10196/com.zuinqstudio.myappname D/mali_winsys: new_window_surface returns 0x3000, [1440x2560]-format:1
10-10 10:56:39.801 8316-8316/com.zuinqstudio.myappname W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)
10-10 10:56:39.801 8316-10196/com.zuinqstudio.myappname D/libGLESv1: DTS_GLAPI : DTS is not allowed for Package : com.zuinqstudio.myappname
10-10 10:56:39.831 3522-4273/? V/WindowStateAnimator: Finishing drawing window Window{73a5795 u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=DRAW_PENDING
10-10 10:56:39.831 8316-8316/com.zuinqstudio.myappname W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)
10-10 10:56:39.861 3522-4281/? V/WindowStateAnimator: Finishing drawing window Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=DRAW_PENDING
10-10 10:56:39.861 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
10-10 10:56:39.861 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
10-10 10:56:39.861 3522-3685/? I/ActivityManager: Displayed com.zuinqstudio.myappname/.UnityPlayerActivity: +334ms (total +10s472ms)
10-10 10:56:39.861 3522-3577/? V/WindowStateAnimator: Finishing drawing window Window{73a5795 u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=HAS_DRAWN
10-10 10:56:39.871 3522-4296/? V/WindowStateAnimator: Finishing drawing window Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=HAS_DRAWN
10-10 10:56:39.871 8316-8316/com.zuinqstudio.myappname I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@5ab022b time:119375200
10-10 10:56:39.951 3522-3685/? I/Timeline: Timeline: Activity_windows_visible id: ActivityRecord{5435b25 u0 com.zuinqstudio.myappname/.UnityPlayerActivity t40571} time:119375289
10-10 10:56:41.161 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: ViewPostImeInputStage processPointer 0
10-10 10:56:41.241 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: ViewPostImeInputStage processPointer 1
10-10 10:56:41.241 3522-3649/? D/StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}
10-10 10:56:41.281 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: #3 mView = null
10-10 10:56:41.281 8316-8316/com.zuinqstudio.myappname E/ViewRootImpl: sendUserActionEvent() mView == null
10-10 10:56:41.281 8316-8316/com.zuinqstudio.myappname I/Unity: onPause
10-10 10:56:41.421 3522-3577/? V/WindowStateAnimator: Finishing drawing window Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=HAS_DRAWN
10-10 10:56:41.841 8316-8316/com.zuinqstudio.myappname I/Unity: onPause
10-10 10:56:41.851 8316-8316/com.zuinqstudio.myappname I/Unity: onDestroy
10-10 10:56:41.851 8316-8316/com.zuinqstudio.myappname I/Process: Sending signal. PID: 8316 SIG: 9
10-10 10:56:41.941 3522-4315/? I/WindowState: WIN DEATH: Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}
10-10 10:56:41.941 3522-4285/? I/ActivityManager: Process com.zuinqstudio.myappname (pid 8316)(adj 11) has died(70,839)
10-10 10:56:41.941 3522-4285/? D/ActivityManager: isAutoRunBlockedApp:: com.zuinqstudio.myappname, Auto Run ON
10-10 10:56:42.351 15066-15066/? W/ResourcesManager: getTopLevelResources: /data/app/com.zuinqstudio.myappname-2/base.apk / 1.0 running in com.android.systemui rsrc of package com.zuinqstudio.myappname
10-10 10:56:42.421 15066-15066/? I/ApplicationPackageManager: load=com.zuinqstudio.myappname, bg=192-192, dr=384-384
经过4天的挣扎,我终于在这个帖子上找到了解决方案。-
我意识到该应用程序在 android 工作室模拟器上仍然 运行 正常,所以我猜这与我的 android 设备的 64 位架构不兼容有关(仍然没有不知道为什么它只是通过添加 Aviary 依赖项就停止工作了。
解决方案非常简单,我所做的只是添加到我的 build.gradle
.-
...
android {
...
defaultConfig {
ndk {
abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
}
...
}
...
我希望其他人觉得这有用 :)
最后我解决了这个问题,只是将文件“.so”重新定位到其他文件夹中:
|--应用程序
|--|--源码
|--|--|--主要
|--|--|--|--jniLibs
|--|--|--|--|--armeabi-v7a
|--|--|--|--|--|--.so文件
我正在将 Aviary sdk 集成到 Unity3d 游戏中。当我最终设法将我的项目导出到 Android Studio,并完成 Aviary 集成的步骤时,当我 运行 应用程序时,我收到了错误。-
Your hardware does not support this application, sorry!
删除依赖项后一切正常。-
compile 'com.adobe.creativesdk:image:4.6.3'
所以我猜肯定存在任何不兼容问题,但不确定我可以尝试什么或如何开始查找问题。
这些是 Aviary sdk Manifest 和 gradle 文件。-
任何人都可以指出我可以尝试的可能步骤的正确方向吗?
编辑 1
我正在寻找 Aviary 的替代品,以防万一我无法让它工作;试过 img.ly
但不完全是我需要的,因为它只适用于通过相机拍摄的照片。也请阅读 photor
,但 sdk 似乎已不存在。 任何已知的替代品?
编辑 2
这是日志跟踪(刚刚捕获的行提到 com.zuinqstudio.myappname
,因为完整的启动日志有点大)。我猜 'real' 错误一定是在这一行附近。-
com.zuinqstudio.myappname E/Unity: Unable to find main
10-10 10:56:39.511 21556-21556/? I/Timeline: Timeline: Activity_launch_request id:com.zuinqstudio.myappname time:119374845
10-10 10:56:39.521 3522-4285/? D/GameManagerService: identifyGamePackage. com.zuinqstudio.myappname
10-10 10:56:39.521 3522-4285/? D/MultiWindowPolicy: Gamemode - return 0, when calling identifyForegroundApp(com.zuinqstudio.myappname)
10-10 10:56:39.521 3522-4285/? V/WindowManager: addAppToken: AppWindowToken{8babaab token=Token{71144fa ActivityRecord{5435b25 u0 com.zuinqstudio.myappname/.UnityPlayerActivity t40571}}} to stack=1 task=40571 at 0
10-10 10:56:39.521 3522-3685/? D/ISSUE_DEBUG: InputChannelName : 69d423 Starting com.zuinqstudio.myappname
10-10 10:56:39.531 3522-3578/? D/ActivityManager: Launching com.zuinqstudio.myappname, updated priority
10-10 10:56:39.531 3522-3522/? D/GameManagerService: NotifyRunnable. pkg: com.zuinqstudio.myappname, type: 4, isMinimized: false, isTunableApp: false
10-10 10:56:39.581 8316-8316/com.zuinqstudio.myappname W/ResourcesManager: getTopLevelResources: /data/app/com.zuinqstudio.myappname-2/base.apk / 1.0 running in com.zuinqstudio.myappname rsrc of package com.zuinqstudio.myappname
10-10 10:56:39.581 3522-3685/? V/WindowStateAnimator: Finishing drawing window Window{69d423 u0 d0 Starting com.zuinqstudio.myappname}: mDrawState=DRAW_PENDING
10-10 10:56:39.581 8316-8316/com.zuinqstudio.myappname W/ResourcesManager: getTopLevelResources: /data/app/com.zuinqstudio.myappname-2/base.apk / 1.0 running in com.zuinqstudio.myappname rsrc of package com.zuinqstudio.myappname
10-10 10:56:39.581 3522-3649/? D/StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{69d423 u0 d0 Starting com.zuinqstudio.myappname}
10-10 10:56:39.611 8316-8316/com.zuinqstudio.myappname E/Unity: Unable to find main
10-10 10:56:39.621 8316-8316/com.zuinqstudio.myappname I/Unity: splash_mode = 0 (integer)
10-10 10:56:39.621 8316-8316/com.zuinqstudio.myappname I/Unity: useObb = False (bool)
10-10 10:56:39.661 8316-8316/com.zuinqstudio.myappname D/SecWifiDisplayUtil: Metadata value : SecSettings2
10-10 10:56:39.661 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: #1 mView = com.android.internal.policy.PhoneWindow$DecorView{b01d164 V.E...... R.....I. 0,0-0,0}
10-10 10:56:39.661 8316-10196/com.zuinqstudio.myappname D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
10-10 10:56:39.671 3522-4285/? D/ISSUE_DEBUG: InputChannelName : 73a5795 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity
10-10 10:56:39.691 3522-3649/? D/StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{73a5795 u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname D/Activity: performCreate Call Injection manager
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname I/InjectionManager: dispatchOnViewCreated > Target : com.zuinqstudio.myappname.UnityPlayerActivity isFragment :false
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname I/Unity: onResume
10-10 10:56:39.691 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: #1 mView = com.android.internal.policy.PhoneWindow$DecorView{2fcc2ce I.E...... R.....ID 0,0-0,0}
10-10 10:56:39.701 3522-3578/? D/ISSUE_DEBUG: InputChannelName : 9c3a49b com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity
10-10 10:56:39.751 8316-10196/com.zuinqstudio.myappname D/libEGL: loaded /vendor/lib64/egl/libGLES_mali.so
10-10 10:56:39.761 8316-10196/com.zuinqstudio.myappname D/libEGL: eglInitialize EGLDisplay = 0x7f677ff178
10-10 10:56:39.761 8316-10196/com.zuinqstudio.myappname I/OpenGLRenderer: Initialized EGL, version 1.4
[ 10-10 10:56:39.761 8316:10196 D/ ]
ro.exynos.dss isEnabled: 0
10-10 10:56:39.761 8316-10196/com.zuinqstudio.myappname D/mali_winsys: new_window_surface returns 0x3000, [1592x1052]-format:1
10-10 10:56:39.771 8316-10196/com.zuinqstudio.myappname D/mali_winsys: new_window_surface returns 0x3000, [1440x2560]-format:1
10-10 10:56:39.801 8316-8316/com.zuinqstudio.myappname W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)
10-10 10:56:39.801 8316-10196/com.zuinqstudio.myappname D/libGLESv1: DTS_GLAPI : DTS is not allowed for Package : com.zuinqstudio.myappname
10-10 10:56:39.831 3522-4273/? V/WindowStateAnimator: Finishing drawing window Window{73a5795 u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=DRAW_PENDING
10-10 10:56:39.831 8316-8316/com.zuinqstudio.myappname W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)
10-10 10:56:39.861 3522-4281/? V/WindowStateAnimator: Finishing drawing window Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=DRAW_PENDING
10-10 10:56:39.861 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
10-10 10:56:39.861 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
10-10 10:56:39.861 3522-3685/? I/ActivityManager: Displayed com.zuinqstudio.myappname/.UnityPlayerActivity: +334ms (total +10s472ms)
10-10 10:56:39.861 3522-3577/? V/WindowStateAnimator: Finishing drawing window Window{73a5795 u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=HAS_DRAWN
10-10 10:56:39.871 3522-4296/? V/WindowStateAnimator: Finishing drawing window Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=HAS_DRAWN
10-10 10:56:39.871 8316-8316/com.zuinqstudio.myappname I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@5ab022b time:119375200
10-10 10:56:39.951 3522-3685/? I/Timeline: Timeline: Activity_windows_visible id: ActivityRecord{5435b25 u0 com.zuinqstudio.myappname/.UnityPlayerActivity t40571} time:119375289
10-10 10:56:41.161 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: ViewPostImeInputStage processPointer 0
10-10 10:56:41.241 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: ViewPostImeInputStage processPointer 1
10-10 10:56:41.241 3522-3649/? D/StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}
10-10 10:56:41.281 8316-8316/com.zuinqstudio.myappname D/ViewRootImpl: #3 mView = null
10-10 10:56:41.281 8316-8316/com.zuinqstudio.myappname E/ViewRootImpl: sendUserActionEvent() mView == null
10-10 10:56:41.281 8316-8316/com.zuinqstudio.myappname I/Unity: onPause
10-10 10:56:41.421 3522-3577/? V/WindowStateAnimator: Finishing drawing window Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}: mDrawState=HAS_DRAWN
10-10 10:56:41.841 8316-8316/com.zuinqstudio.myappname I/Unity: onPause
10-10 10:56:41.851 8316-8316/com.zuinqstudio.myappname I/Unity: onDestroy
10-10 10:56:41.851 8316-8316/com.zuinqstudio.myappname I/Process: Sending signal. PID: 8316 SIG: 9
10-10 10:56:41.941 3522-4315/? I/WindowState: WIN DEATH: Window{9c3a49b u0 d0 com.zuinqstudio.myappname/com.zuinqstudio.myappname.UnityPlayerActivity}
10-10 10:56:41.941 3522-4285/? I/ActivityManager: Process com.zuinqstudio.myappname (pid 8316)(adj 11) has died(70,839)
10-10 10:56:41.941 3522-4285/? D/ActivityManager: isAutoRunBlockedApp:: com.zuinqstudio.myappname, Auto Run ON
10-10 10:56:42.351 15066-15066/? W/ResourcesManager: getTopLevelResources: /data/app/com.zuinqstudio.myappname-2/base.apk / 1.0 running in com.android.systemui rsrc of package com.zuinqstudio.myappname
10-10 10:56:42.421 15066-15066/? I/ApplicationPackageManager: load=com.zuinqstudio.myappname, bg=192-192, dr=384-384
经过4天的挣扎,我终于在这个帖子上找到了解决方案。-
我意识到该应用程序在 android 工作室模拟器上仍然 运行 正常,所以我猜这与我的 android 设备的 64 位架构不兼容有关(仍然没有不知道为什么它只是通过添加 Aviary 依赖项就停止工作了。
解决方案非常简单,我所做的只是添加到我的 build.gradle
.-
...
android {
...
defaultConfig {
ndk {
abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
}
...
}
...
我希望其他人觉得这有用 :)
最后我解决了这个问题,只是将文件“.so”重新定位到其他文件夹中:
|--应用程序
|--|--源码
|--|--|--主要
|--|--|--|--jniLibs
|--|--|--|--|--armeabi-v7a
|--|--|--|--|--|--.so文件