androidunity-game-engineaviary

Unity3d + Aviary. Your hardware does not support this application


I'm integrating Aviary sdk on a Unity3d game. When I finally managed to export my project to Android Studio, and finishing the steps for Aviary integration, when I run the app I get the error.-

Your hardware does not support this application, sorry!

Everything works fine when I remove the dependency.-

compile 'com.adobe.creativesdk:image:4.6.3'

so I'm guessing there must be any incompatibility issue, but not sure what could I try or how could I start finding the issue.

These are Aviary sdk Manifest and gradle files.-

https://github.com/CreativeSDK/android-getting-started-samples/blob/master/image-editor-ui/code/app/src/main/AndroidManifest.xml

https://github.com/CreativeSDK/android-getting-started-samples/blob/master/image-editor-ui/code/app/build.gradle

Anyone could point me in the right direction on possible steps I could try?

EDIT 1

I'm looking for Aviary alternatives just in case I can't make it work; tried img.ly but not exactly what I need, as it works only for photos taken through the camera. Read about photor as well, but it seems the sdk no longer exists. Any known alternatives?

EDIT 2

Here it is the log trace (just captured lines mentioning com.zuinqstudio.myappname, as the full launch log is quiet a bit large). I'm guessing the 'real' error must be around this line.-

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

Solution

  • After 4 days struggling, I finally found the solution on this thread.-

    How to use 32-bit native libraries on 64-bit Android device

    I realized that the app still run fine on android studio simulator, so I guess it had something to do with incompatibilities with 64bits architecture of my android device (still don't know why it stopped working just by adding the Aviary dependency).

    The solution is annoyingly simple, all I've done is adding to my build.gradle.-

    ...
    android {
        ...
        defaultConfig {
        ndk {
            abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
        }
        ...
     }
     ...
    

    I hope someone else find this useful :)