共享文件后,Xamarin游戏图形不再更新

时间:2018-10-27 11:29:34

标签: xamarin xamarin.android cocossharp

我正在使用xamarin和CocosSharp,但是我遇到了一个无聊的问题,我花了两天时间。

我使用CCRenderTexture共享屏幕:

CCRenderTexture renTexture = new CCRenderTexture(size, sizePixel);
            renTexture.Sprite.AnchorPoint = CCPoint.AnchorMiddle;
            renTexture.BeginWithClear(CCColor4B.White);
            App.Current.paper.Visit();
            renTexture.End();

            ScheduleOnce(
                async (t) =>
                {
                    MemoryStream ms = new MemoryStream();
                    renTexture.SaveToStream(ms, CCImageFormat.Jpg);
                    await DependencyService.Get<IShareControl>().ShareImageAsync(ms, 
                                                                                App.Current.formatShare, 
                                                                                renTexture.Texture.ContentSizeInPixels.Width,
                                                                                renTexture.Texture.ContentSizeInPixels.Height);
                }
                , 0f
            );

IShareControl-这将询问用户他们要共享图像的方式。他们通过所有支持图片的应用进行选择。

问题来了,返回我的应用程序:

如果您按下首页按钮,然后按“应用程序”按钮并选择“我的全部”,则一切正常。

但是,如果您按“后退”按钮,它将返回我的应用程序,但是CocosSharp屏幕将冻结并且不再刷新,但是如果发生这种情况,我按了“主页”按钮然后返回我的应用程序,则一切再次工作。

关于如何处理此问题的任何建议?

更多信息:

输出窗口:

  

10-27 12:40:41.857 I / SurfaceView(24433):updateWindow-onWindowVisibilityChanged,可见性= 4,此= md5b91140b71aacd300338857cebaa38ef2.CCGameView {691154f VFE ...... ........ 0 ,0-1920,1080#27}   10/27 12:40:41.916 V / PhoneWindow(24433):DecorView setVisiblity:可见性= 0,父级= ViewRoot {9dfee71 com.companyname.PneumaticDeveloper / md53779371d6f0a32e3c85c9cee64ae35cf.MainActivity,ident = 0},此= DecorView [4767bb]   10-27 12:40:41.919 I / SurfaceView(24433):updateWindow-onWindowVisibilityChanged,可见性= 0,此= md5b91140b71aacd300338857cebaa38ef2.CCGameView {691154f VFE ...... ........ 0,0- 1920,1080#27}   10-27 12:40:41.952 D /曲面(24433):Surface :: connect(this = 0x76cf453600,api = 1)   10-27 12:40:41.953 W / libEGL(24433):[ANDROID_RECORDABLE]格式:2   10-27 12:40:41.959 D / mali_winsys(24433):EGLint new_window_surface(egl_winsys_display *,void *,EGLSurface,EGLConfig,egl_winsys_surface **,egl_color_buffer_format *,EGLBoolean)返回0x3000   10-27 12:40:41.968 D /曲面(24433):Surface :: disconnect(this = 0x76cf450c00,api = 1)   10-27 12:40:41.969 D / GraphicBuffer(24433):注销,处理(0x76d1f3a7c0)(w:1080 h:1920 s:1088 f:0x2 u:0x000b00)   10-27 12:40:41.970 D / GraphicBuffer(24433):取消注册,处理(0x76cd4d3100)(w:1080 h:1920 s:1088 f:0x2 u:0x000b00)   10-27 12:40:41.970 D / GraphicBuffer(24433):取消注册,处理(0x76cd4d3ac0)(w:1080 h:1920 s:1088 f:0x2 u:0x000b00)   10-27 12:40:41.979 W / MALI(24433):winsysp_window_buffer_get:2379:[MALI] window-> dequeueBuffer Failed,return -19 ... ...   10-27 12:40:41.979 E / MALI(24433):gles_state_set_error_internal:69:[MALI] GLES ctx:0x76cf2a9ec8,错误代码:0x505   10-27 12:40:42.111 D /(24433):#00 pc 000000000000e67c /system/lib64/libutils.so(_ZN7android9CallStackC2EPKci + 92)   10-27 12:40:42.111 D /(24433):#01 pc 000000000089b3b0 / system /供应商/lib64/egl/libGLES_mali.so(MtkMali_DumpCallStack + 48)   10-27 12:40:42.111 D /(24433):#02 pc 0000000000838b14 /system/vendor/lib64/egl/libGLES_mali.so   10-27 12:40:42.111 D /(24433):#03 pc 00000000007f2abc /system/vendor/lib64/egl/libGLES_mali.so   10-27 12:40:42.111 D /(24433):#04 pc 00000000007f0c14 /system/vendor/lib64/egl/libGLES_mali.so   10-27 12:40:42.111 D /(24433):#05 pc 00000000007eeda0 /system/vendor/lib64/egl/libGLES_mali.so   10-27 12:40:42.111 D /(24433):#06 pc 0000000000079554   10-27 12:40:42.111 D / MALI(24433):gles_state_set_error_internal:70:[MALI] GLES错误信息:无法分配CPU内存   线程完成:#15   在线程0xf中,线程0(0x0)。   线程完成:#13   在线程0xd中,线程0(0x0)。   10-27 12:40:55.506 I / ViewRootImplMainActivity:ANR密钥分析:当前没有密钥事件。   10-27 12:40:55.507 I / ViewRootImplMainActivity:ANR密钥分析:Previeous Event null,在1969-12-31 21:00:00.000完成   10-27 12:40:55.507 I / ViewRootImplMainActivity:ANR运动分析:当前没有运动事件。   10-27 12:40:55.507 I / ViewRootImplMainActivity:ANR运动分析:上一个事件MotionEvent {action = ACTION_UP,actionButton = 0,id [0] = 0,x [0] = 438.77145,y [0] = 127.88159,toolType [0] = TOOL_TYPE_FINGER,buttonState = 0,metaState = 0,标志= 0x0,edgeFlags = 0x0,pointerCount = 1,historySize = 0,eventTime = 65456569,downTime = 65456470,deviceId = 9,source = 0x1002},于2018年完成-10-27 12:40:28.921   10-27 12:40:55.566 I / art(24433):线程[3,tid = 24439,WaitingInMainSignalCatcherLoop,Thread * = 0x76f7697400,peer = 0x2ac050d0,“ Signal Catcher”]:对信号3做出反应

即使没有分享,也是如此。

在打开我的应用程序的同时,我单击了通知,该通知通过“后退”按钮返回到我的应用程序时打开了另一个应用程序,错误发生了。通过“后退”按钮或“应用程序”按钮返回到应用程序有什么区别?

0 个答案:

没有答案