Closed seonake closed 1 year ago
Can you post the full log captured via adb
?
Sure, Here it is:
08-15 23:00:42.632 1978 5802 W XSpaceManagerServiceImpl: checkXSpaceControl, from:com.mi.android.globallauncher, to:xxx.xxx.xxxxxx.xxxxxx, with act:android.intent.action.MAIN, callingUserId:0, toUserId:0 08-15 23:00:42.632 1978 5802 I ActivityTaskManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity bnds=[54,1077][222,1245] (has extras)} from uid 10100 from pid 3108 callingPackage com.mi.android.globallauncher 08-15 23:00:42.637 1978 5802 D MiuiFreeFormManagerService: onStartActivityInner as = Task{310074e #1652 type=standard A=10049:xxx.xxx.xxxxxx.xxxxxx U=0 visible=false mode=fullscreen translucent=true sz=1} op = ActivityOptions(193384764), mPackageName=null, mAnimationType=13, mStartX=0, mStartY=0, mWidth=0, mHeight=0, activityOptionsInjector=ActivityOptionsInjector={freeformScale: -1.0, miniFreeformMode: false, needAnimation: true, useCustomLaunchBounds:false} 08-15 23:00:42.641 1978 5802 D ActivityRecordImpl: Task bounds and snapshot don't match. task width=1080, height=2400: snapshot w=2400, h=1080, name = ActivityRecord{a642613 u0 xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity t1652} 08-15 23:00:42.642 1978 5802 D PerfImpl: perfWarmLaunchBoost: xxx.xxx.xxxxxx.xxxxxx, -1, 1 08-15 23:00:42.656 1978 2003 D PerfImpl: perfWarmLaunchBoost: xxx.xxx.xxxxxx.xxxxxx, -1, 1 08-15 23:00:42.656 1978 2003 D PerfImpl: perfAnimBoost: xxx.xxx.xxxxxx.xxxxxx 08-15 23:00:42.666 8171 24167 D PerfEngineController: ForegroundInfo{mForegroundPackageName='xxx.xxx.xxxxxx.xxxxxx', mForegroundUid=10049, mForegroundPid=14123, mLastForegroundPackageName='com.mi.android.globallauncher', mLastForegroundUid=10100, mLastForegroundPid=3108, mMultiWindowForegroundPackageName='null', mMultiWindowForegroundUid=-1, mFlags=0} 08-15 23:00:42.666 13703 13717 D AutoInstallService: onForegroundInfoChanged: xxx.xxx.xxxxxx.xxxxxx 08-15 23:00:42.667 1978 2716 D CameraBlackCoveredManager: mForegroundPackage = xxx.xxx.xxxxxx.xxxxxx mOccupiedPackage = com.android.camera 08-15 23:00:42.667 8179 8831 I GST : forePkg: xxx.xxx.xxxxxx.xxxxxx, preForePkg: com.mi.android.globallauncher 08-15 23:00:42.667 6630 6654 I ProcessMonitor: onForegroundInfoChanged: ForegroundInfo{mForegroundPackageName='xxx.xxx.xxxxxx.xxxxxx', mForegroundUid=10049, mForegroundPid=14123, mLastForegroundPackageName='com.mi.android.globallauncher', mLastForegroundUid=10100, mLastForegroundPid=3108, mMultiWindowForegroundPackageName='null', mMultiWindowForegroundUid=-1, mFlags=0} 08-15 23:00:42.667 8171 24167 D GreenifyCheckerStatsd: onForegroundInfoChanged: xxx.xxx.xxxxxx.xxxxxx 08-15 23:00:42.668 8171 8448 D LS-ForegroundStatusManager: handleMessage ForegroundInfoChanged. pkg = xxx.xxx.xxxxxx.xxxxxx, uid = 10049, mCurrentForegroundUid = 10100 08-15 23:00:42.668 6630 6654 I GameBoosterService: onForegroundInfoChanged: Cur=xxx.xxx.xxxxxx.xxxxxx last=com.mi.android.globallauncher 08-15 23:00:42.668 6630 6654 D GameBoosterService: onGameStatusChange foreground:ForegroundInfo{mForegroundPackageName='xxx.xxx.xxxxxx.xxxxxx', mForegroundUid=10049, mForegroundPid=14123, mLastForegroundPackageName='com.mi.android.globallauncher', mLastForegroundUid=10100, mLastForegroundPid=3108, mMultiWindowForegroundPackageName='null', mMultiWindowForegroundUid=-1, mFlags=0} 08-15 23:00:42.697 1978 2694 V MiuiActivityTaskManagerServiceEx: dispatchActivityLifeState r = ActivityRecord{a642613 u0 xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity t1652} 08-15 23:00:42.706 1978 2694 D WindowManager: Input focus has changed to Window{ab4fdba u0 xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity} display=0 08-15 23:00:42.712 14123 14123 D SurfaceView: UPDATE Surface(name=SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity])/@0xae276f1, mIsProjectionMode = false 08-15 23:00:42.715 1978 2067 D PerfImpl: perfFirstDrawBoost: xxx.xxx.xxxxxx.xxxxxx, 14123, 1 08-15 23:00:42.784 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.784 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217734 miFodLayer 0x8000000 08-15 23:00:42.800 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.800 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217734 miFodLayer 0x8000000 08-15 23:00:42.816 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.816 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217734 miFodLayer 0x8000000 08-15 23:00:42.833 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.833 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217734 miFodLayer 0x8000000 08-15 23:00:42.849 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.849 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217734 miFodLayer 0x8000000 08-15 23:00:42.866 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.866 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217734 miFodLayer 0x8000000 08-15 23:00:42.882 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.882 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.899 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.899 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.915 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.915 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.932 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.932 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.948 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.948 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.965 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.965 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.981 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.981 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:42.998 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:42.998 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.014 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.014 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.031 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.031 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.047 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.047 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.064 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.064 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.082 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.082 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.099 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.099 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.116 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.116 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.133 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.133 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.148 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.148 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.166 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.166 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.181 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.181 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.199 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.199 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.214 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.214 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.231 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.231 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.247 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.247 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.253 1978 2003 I WindowManager: rotation changed from 0 to 1 due ActivityRecord{a642613 u0 xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity t1652} 08-15 23:00:43.256 8171 8467 I DisplayFrameSetting: homeToAppEnd pkg=xxx.xxx.xxxxxx.xxxxxx 08-15 23:00:43.258 4767 4767 I GoogleInputMethodService: GoogleInputMethodService.onStartInput():1956 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null packageName=xxx.xxx.xxxxxx.xxxxxx fieldId=-1 fieldName=null extras=null}, false) 08-15 23:00:43.263 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217732 miFodLayer 0x8000000 08-15 23:00:43.263 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217733 miFodLayer 0x8000000 08-15 23:00:43.280 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.280 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217731 miFodLayer 0x8000000 08-15 23:00:43.293 14123 14156 E BLASTBufferQueue: SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#7 rejecting buffer:active_size=2320x1080, requested_size=2320x1080 buffer{size=1000x2190 transform=7} 08-15 23:00:43.297 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.297 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.312 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.312 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.323 4767 4767 I GoogleInputMethodService: GoogleInputMethodService.onStartInput():1956 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null packageName=xxx.xxx.xxxxxx.xxxxxx fieldId=-1 fieldName=null extras=null}, true) 08-15 23:00:43.329 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.329 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.346 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.362 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.379 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.379 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.396 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.396 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.407 1978 2003 D WindowManager: Input focus has changed to Window{ab4fdba u0 xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity} display=0 08-15 23:00:43.411 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.411 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.428 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.428 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217730 miFodLayer 0x8000000 08-15 23:00:43.444 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.461 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.477 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.494 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.510 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.527 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.543 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.560 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.577 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.594 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.610 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.627 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.634 1978 3561 D PerfShielderService: xxx.xxx.xxxxxx.xxxxxx|xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity|622|98039461749995|583|0|3 08-15 23:00:43.635 5277 13851 W MiuiPerfServiceClient: interceptAndQueuing:14123|xxx.xxx.xxxxxx.xxxxxx|622|583|98039461749995|Slow main thread|3 08-15 23:00:43.644 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.660 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.676 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.693 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.709 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.726 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.742 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.759 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.776 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.792 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.809 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.825 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:43.859 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:00:47.909 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[Background for SurfaceView[xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity]#0] set Z 134217729 miFodLayer 0x8000000
08-15 23:02:55.498 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98171587, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:02:55.620 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98171707, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:00.097 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98176185, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:00.172 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98176260, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:02.600 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98178688, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:02.688 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98178776, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:04.112 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98180200, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:04.173 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98180261, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:07.084 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98183172, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:07.088 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98183177, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:13.454 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98189541, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:13.596 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98189684, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:16.241 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98192329, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:16.361 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98192450, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:17.564 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x0, 98193651, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:17.665 1978 2568 D MIUIInput: [MotionEvent] publisher action=0x1, 98193753, channel 'ab4fdba xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity (server)' 08-15 23:03:19.282 1140 1140 D CompositionEngine: writeOutputDependentGeometryStateToHWC layer[SurfaceViewxxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity#0] set Z 134217729 miFodLayer 0x8000000 08-15 23:03:19.624 1978 2686 W InputDispatcher: Letterbox_left_ActivityRecord{a642613 u0 xxx.xxx.xxxxxx.xxxxxx/org.kivy.android.PythonActivity t1652} has FLAG_SLIPPERY. Please report this in b/157929241 08-15 23:03:20.557 8171 8358 I ThermalInfoCollector: collectForgroundAppsInfo: xxx.xxx.xxxxxx.xxxxxx
It is not clear from the post if you are using Kivy Camera or opencv camera, but both have portability issues on Android. Consider using Preview instead, the opencv example: https://github.com/Android-for-Python/c4k_opencv_example
I use opencv camera. Many thanks, i will try and i will tell you how it works...
Hello again. I did some changes to use Preview (camera4kivy) and finally camera it is working. I am not fully happy since camera4kivy is only able to capture video for android... but at least it is working. Many thanks.
@seonake did we capture a picture and then want to store it locally or in cloud servers using the camera4kivy instead of opencv in android. When results u get when u code for the camera4kivy. I have same issue Camera isn't opening on android
👋 @seonake, we use the issue tracker exclusively for bug reports and feature requests. However, this issue appears to be a support request. Please use our support channels to get help with the project. Let us know if this comment was made in error, and we'll be happy to reopen the issue.
Versions
Description
I have developed a little app with kivy and OpenCV. It is working without problems on PC but when i compile it (BUILDOZER) and try it on android phone, camera doesnt work. The app has all the permissions (camera, etc) and i tried to know what going on with ADB (USB debugging directly on the phone). Nothing seems to be wrong.
I would highly appreciate your help. Many thanks.
buildozer.spec
buildozer init buildozer -v android debug
Spec file:
[app]
(str) Title of your application
title = XXXX
(str) Package name
package.name = XXX
(str) Package domain (needed for android/ios packaging)
package.domain = com.XXX.XXX
(str) Source code where the main.py live
source.dir = ./drive/MyDrive/XXXX
(list) Source files to include (let empty to include all the files)
source.include_exts = py,png,jpg,kv,atlas,mp3,gif
(list) List of inclusions using pattern matching
source.include_patterns = ./drive/MyDrive/XXXX/assets/, ./drive/MyDrive/XXXX/screens/, ./drive/MyDrive/XXXX/snd/*
(list) Source files to exclude (let empty to not exclude anything)
source.exclude_exts = spec
(list) List of directory to exclude (let empty to not exclude anything)
source.exclude_dirs = tests, bin, venv
(list) List of exclusions using pattern matching
Do not prefix with './'
source.exclude_patterns = license,images//.jpg
(str) Application versioning (method 1)
version = 1.0
(str) Application versioning (method 2)
version.regex = version = '"['"]
version.filename = %(source.dir)s/main.py
(list) Application requirements
comma separated e.g. requirements = sqlite3,kivy
requirements = kivy, python_for_android, android, jnius, kivmob, kivymd, XlsxWriter, uuid, pytest-shutil, pillow, pysqlite3, opencv, plyer, ffmpeg-python, ffpyplayer
(str) Custom source folders for requirements
Sets custom source for any requirements with recipes
requirements.source.kivy = ../../kivy
(str) Presplash of the application
presplash.filename = ./drive/MyDrive/XXXX/white.png
(str) Icon of the application
icon.filename = ./drive/MyDrive/XXXX/assets/logo.png
(str) Supported orientation (one of landscape, sensorLandscape, portrait or all)
orientation = landscape
(list) List of service to declare
services = NAME:ENTRYPOINT_TO_PY,NAME2:ENTRYPOINT2_TO_PY
#
OSX Specific
#
#
author = © Copyright Info
change the major version of python used by the app
osx.python_version = 3
Kivy version to use
osx.kivy_version = 1.9.1
#
Android specific
#
(bool) Indicate if the application should be fullscreen or not
fullscreen = 1
(string) Presplash background color (for android toolchain)
Supported formats are: #RRGGBB #AARRGGBB or one of the following names:
red, blue, green, black, white, gray, cyan, magenta, yellow, lightgray,
darkgray, grey, lightgrey, darkgrey, aqua, fuchsia, lime, maroon, navy,
olive, purple, silver, teal.
android.presplash_color = #FFFFFF
(string) Presplash animation using Lottie format.
see https://lottiefiles.com/ for examples and https://airbnb.design/lottie/
for general documentation.
Lottie files can be created using various tools, like Adobe After Effect or Synfig.
android.presplash_lottie = "path/to/lottie/file.json"
(str) Adaptive icon of the application (used if Android API level is 26+ at runtime)
icon.adaptive_foreground.filename = %(source.dir)s/data/icon_fg.png
icon.adaptive_background.filename = %(source.dir)s/data/icon_bg.png
(list) Permissions
android.permissions = INTERNET, ACCESS_NETWORK_STATE, WAKE_LOCK, CAMERA, WRITE_EXTERNAL_STORAGE, ACCESS_FINE_LOCATION, READ_EXTERNAL_STORAGE
(list) features (adds uses-feature -tags to manifest)
android.features = android.hardware.usb.host
(int) Target Android API, should be as high as possible.
android.api = 30
(int) Minimum API your APK / AAB will support.
android.minapi = 21
(int) Android SDK version to use
android.sdk = 24
(str) Android NDK version to use
android.ndk = 19b
(int) Android NDK API to use. This is the minimum API your app will support, it should usually match android.minapi.
android.ndk_api = 24
(bool) Use --private data storage (True) or --dir public storage (False)
android.private_storage = True
(str) Android NDK directory (if empty, it will be automatically downloaded.)
android.ndk_path =
(str) Android SDK directory (if empty, it will be automatically downloaded.)
android.sdk_path =
(str) ANT directory (if empty, it will be automatically downloaded.)
android.ant_path =
(bool) If True, then skip trying to update the Android sdk
This can be useful to avoid excess Internet downloads or save time
when an update is due and you just want to test/build your package
android.skip_update = False
(bool) If True, then automatically accept SDK license
agreements. This is intended for automation only. If set to False,
the default, you will be shown the license when first running
buildozer.
android.accept_sdk_license = True
(str) Android entry point, default is ok for Kivy-based app
android.entrypoint = org.kivy.android.PythonActivity
(str) Full name including package path of the Java class that implements Android Activity
use that parameter together with android.entrypoint to set custom Java class instead of PythonActivity
android.activity_class_name = org.kivy.android.PythonActivity
(str) Extra xml to write directly inside the element of AndroidManifest.xml
use that parameter to provide a filename from where to load your custom XML code
android.extra_manifest_xml = ./src/android/extra_manifest.xml
(str) Extra xml to write directly inside the tag of AndroidManifest.xml
use that parameter to provide a filename from where to load your custom XML arguments:
android.extra_manifest_application_arguments = ./src/android/extra_manifest_application_arguments.xml
(str) Full name including package path of the Java class that implements Python Service
use that parameter to set custom Java class instead of PythonService
android.service_class_name = org.kivy.android.PythonService
(str) Android app theme, default is ok for Kivy-based app
android.apptheme = "@android:style/Theme.NoTitleBar"
(list) Pattern to whitelist for the whole project
android.whitelist =
(str) Path to a custom whitelist file
android.whitelist_src =
(str) Path to a custom blacklist file
android.blacklist_src =
(list) List of Java .jar files to add to the libs so that pyjnius can access
their classes. Don't add jars that you do not need, since extra jars can slow
down the build process. Allows wildcards matching, for example:
OUYA-ODK/libs/*.jar
android.add_jars = foo.jar,bar.jar,path/to/more/*.jar
(list) List of Java files to add to the android project (can be java or a
directory containing the files)
android.add_src =
(list) Android AAR archives to add
android.add_aars =
(list) Put these files or directories in the apk assets directory.
Either form may be used, and assets need not be in 'source.include_exts'.
1) android.add_assets = source_asset_relative_path
2) android.add_assets = source_asset_path:destination_asset_relative_path
android.add_assets =
(list) Gradle dependencies to add
android.gradle_dependencies = 'com.google.firebase:firebase-ads:10.2.0'
(bool) Enable AndroidX support. Enable when 'android.gradle_dependencies'
contains an 'androidx' package, or any package from Kotlin source.
android.enable_androidx requires android.api >= 28
android.enable_androidx = False
(list) add java compile options
this can for example be necessary when importing certain java libraries using the 'android.gradle_dependencies' option
see https://developer.android.com/studio/write/java8-support for further information
android.add_compile_options = "sourceCompatibility = 1.8", "targetCompatibility = 1.8"
(list) Gradle repositories to add {can be necessary for some android.gradle_dependencies}
please enclose in double quotes
e.g. android.gradle_repositories = "maven { url 'https://kotlin.bintray.com/ktor' }"
android.add_gradle_repositories =
(list) packaging options to add
see https://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.PackagingOptions.html
can be necessary to solve conflicts in gradle_dependencies
please enclose in double quotes
e.g. android.add_packaging_options = "exclude 'META-INF/common.kotlin_module'", "exclude 'META-INF/*.kotlin_module'"
android.add_packaging_options =
(list) Java classes to add as activities to the manifest.
android.add_activities = com.example.ExampleActivity
(str) OUYA Console category. Should be one of GAME or APP
If you leave this blank, OUYA support will not be enabled
android.ouya.category = GAME
(str) Filename of OUYA Console icon. It must be a 732x412 png image.
android.ouya.icon.filename = %(source.dir)s/data/ouya_icon.png
(str) XML file to include as an intent filters in tag
android.manifest.intent_filters =
(str) launchMode to set for the main activity
android.manifest.launch_mode = standard
(list) Android additional libraries to copy into libs/armeabi
android.add_libs_armeabi = libs/android/*.so
android.add_libs_armeabi_v7a = libs/android-v7/*.so
android.add_libs_arm64_v8a = libs/android-v8/*.so
android.add_libs_x86 = libs/android-x86/*.so
android.add_libs_mips = libs/android-mips/*.so
(bool) Indicate whether the screen should stay on
Don't forget to add the WAKE_LOCK permission if you set this to True
android.wakelock = True
(list) Android application meta-data to set (key=value format)
android.meta_data = com.google.android.gms.ads.APPLICATION_ID=ca-app-pub-3940256099942544~3347511713
(list) Android library project to add (will be added in the
project.properties automatically.)
android.library_references =
(list) Android shared libraries which will be added to AndroidManifest.xml using tag
android.uses_library =
(str) Android logcat filters to use
android.logcat_filters = *:S python:D
(bool) Android logcat only display log for activity's pid
android.logcat_pid_only = False
(str) Android additional adb arguments
android.adb_args = -H host.docker.internal
(bool) Copy library instead of making a libpymodules.so
android.copy_libs = 1
(list) The Android archs to build for, choices: armeabi-v7a, arm64-v8a, x86, x86_64
In past, was
android.arch
as we weren't supporting builds for multiple archs at the same time.android.archs = arm64-v8a, armeabi-v7a
(int) overrides automatic versionCode computation (used in build.gradle)
this is not the same as app version and should only be edited if you know what you're doing
android.numeric_version = 1
(bool) enables Android auto backup feature (Android API >=23)
android.allow_backup = True
(str) XML file for custom backup rules (see official auto backup documentation)
android.backup_rules =
(str) If you need to insert variables into your AndroidManifest.xml file,
you can do so with the manifestPlaceholders property.
This property takes a map of key-value pairs. (via a string)
Usage example : android.manifest_placeholders = [myCustomUrl:\"org.kivy.customurl\"]
android.manifest_placeholders = [:]
(bool) disables the compilation of py to pyc/pyo files when packaging
android.no-compile-pyo = True
(str) The format used to package the app for release mode (aab or apk).
android.release_artifact = aab
#
Python for android (p4a) specific
#
(str) python-for-android URL to use for checkout
p4a.url =
(str) python-for-android fork to use in case if p4a.url is not specified, defaults to upstream (kivy)
p4a.fork = kivy
(str) python-for-android branch to use, defaults to master
p4a.branch = master
(str) python-for-android specific commit to use, defaults to HEAD, must be within p4a.branch
p4a.commit = HEAD
(str) python-for-android git clone directory (if empty, it will be automatically cloned from github)
p4a.source_dir =
(str) The directory in which python-for-android should look for your own build recipes (if any)
p4a.local_recipes =
(str) Filename to the hook for p4a
p4a.hook =
(str) Bootstrap to use for android builds
p4a.bootstrap = sdl2
(int) port number to specify an explicit --port= p4a argument (eg for bootstrap flask)
p4a.port =
Control passing the --use-setup-py vs --ignore-setup-py to p4a
"in the future" --use-setup-py is going to be the default behaviour in p4a, right now it is not
Setting this to false will pass --ignore-setup-py, true will pass --use-setup-py
NOTE: this is general setuptools integration, having pyproject.toml is enough, no need to generate
setup.py if you're using Poetry, but you need to add "toml" to source.include_exts.
p4a.setup_py = false
(str) extra command line arguments to pass when invoking pythonforandroid.toolchain
p4a.extra_args =
#
iOS specific
#
(str) Path to a custom kivy-ios folder
ios.kivy_ios_dir = ../kivy-ios
Alternately, specify the URL and branch of a git checkout:
ios.kivy_ios_url = https://github.com/kivy/kivy-ios ios.kivy_ios_branch = master
Another platform dependency: ios-deploy
Uncomment to use a custom checkout
ios.ios_deploy_dir = ../ios_deploy
Or specify URL and branch
ios.ios_deploy_url = https://github.com/phonegap/ios-deploy ios.ios_deploy_branch = 1.10.0
(bool) Whether or not to sign the code
ios.codesign.allowed = false
(str) Name of the certificate to use for signing the debug version
Get a list of available identities: buildozer ios list_identities
ios.codesign.debug = "iPhone Developer: ()"
(str) The development team to use for signing the debug version
ios.codesign.development_team.debug =
(str) Name of the certificate to use for signing the release version
ios.codesign.release = %(ios.codesign.debug)s
(str) The development team to use for signing the release version
ios.codesign.development_team.release =
(str) URL pointing to .ipa file to be installed
This option should be defined along with
display_image_url
andfull_size_image_url
options.ios.manifest.app_url =
(str) URL pointing to an icon (57x57px) to be displayed during download
This option should be defined along with
app_url
andfull_size_image_url
options.ios.manifest.display_image_url =
(str) URL pointing to a large icon (512x512px) to be used by iTunes
This option should be defined along with
app_url
anddisplay_image_url
options.ios.manifest.full_size_image_url =
[buildozer]
(int) Log level (0 = error only, 1 = info, 2 = debug (with command output))
log_level = 2
(int) Display warning if buildozer is run as root (0 = False, 1 = True)
warn_on_root = 1
(str) Path to build artifact storage, absolute or relative to spec file
build_dir = ./.buildozer
(str) Path to build output (i.e. .apk, .aab, .ipa) storage
bin_dir = ./bin
-----------------------------------------------------------------------------
List as sections
#
You can define all the "list" as [section:key].
Each line will be considered as a option to the list.
Let's take [app] / source.exclude_patterns.
Instead of doing:
#
[app]
source.exclude_patterns = license,data/audio/.wav,data/images/original/
#
This can be translated into:
#
[app:source.exclude_patterns]
license
data/audio/*.wav
data/images/original/*
#
-----------------------------------------------------------------------------
Profiles
#
You can extend section / key with a profile
For example, you want to deploy a demo version of your application without
HD content. You could first change the title to add "(demo)" in the name
and extend the excluded directories to remove the HD content.
#
[app@demo]
title = My Application (demo)
#
[app:source.exclude_patterns@demo]
images/hd/*
#
Then, invoke the command line with the "demo" profile:
#
buildozer --profile demo android debug
Logs