[Android zone] 容器窗口管理进程无法就绪,死活运行不了安卓应用
Tofloor
poster avatar
野狼
deepin
2021-07-13 04:47
Author

 

折腾好多天了死活都是这个提示,论坛上大家提到的方法都试了,重启卸载重装都试过了

包括卸载干净uengine,查找出所有的uengine文件夹删除重装,重启三大uengine进程,重启电脑等10分钟等半小时都没用。

就是死活都是这个提示,然后最大一点不同就是我的电脑上一直出现不了那个安卓盘符。


请问除了重装系统,谁有招???

Reply Favorite View the author
All Replies
野狼
deepin
2021-07-13 04:51
#1

这论坛发个帖子简直要命,点击发帖按钮半天没反应 我还以为没发出来呢。

Reply View the author
wch0532
deepin
2021-07-13 05:41
#2

我也是遇到和你一样问题,用了很多办法都没解决

Reply View the author
daniel_shao
deepin
2021-07-13 05:43
#3

这是Anbox的一个老问题,看Github上的issue #754

前排提示:uengine是由开源项目Anbox二次开发得到的,所以Anbox很多子命令都可以直接用,错误信息也是相同的。

Reply View the author
野狼
deepin
2021-07-13 05:50
#4
daniel_shao

这是Anbox的一个老问题,看Github上的issue #754

前排提示:uengine是由开源项目Anbox二次开发得到的,所以Anbox很多子命令都可以直接用,错误信息也是相同的。

这些资料都看过,但是都没有提供一个解决问题的办法

Reply View the author
神末shenmo
deepin
Spark-App
Q&A Team
2021-07-13 06:14
#5

sudo pkill uengine*

先杀死进程

uengine session(这句可能打错字了,你可以先打uengine看帮助看看是哪个)

如果这个命令报错,再看看问题在哪

Reply View the author
daniel_shao
deepin
2021-07-13 06:16
#6
188     auto connection = use_system_dbus_
189                           ? sdbus::createSystemBusConnection()
190                           : sdbus::createSessionBusConnection();
191     ApplicationManagerClient client(*connection, dbus::interface::Service::name(), dbus::interface::Service::path());                          
192     n = 0;                 
193     while (n < max_session_mgr_wait_attempts) {
194       if (client.Ready())  
195         break;             
196 
197       std::this_thread::sleep_for(session_mgr_wait_interval);
198       n++;                 
199     }                      
200 
201     if (!client.Ready()) { 
202       ERROR("Session manager failed to become ready");                                                                                         
203       return EXIT_FAILURE; 
204     }

我查了Anbox源码,这个错误发生在launch主函数中。上面截取的一段代码,推测为Manager Client创立连接,并等待若干次(默认值写死了为10次,每次等待5秒)。如果还是没有成功,则失败。

Client::Ready()函数实则是类型为anbox::application:Manager的一个实例impl_调用ready()函数。这个类是一个抽象类,应该是根据上面188行生成,191行中传进去的connection变量来调用对应派生类的函数。这后边需要在你的环境下用GDB等工具调试了,要不然没法复现到202行错误时的函数调用关系。直接看代码的话太复杂了。

如果你是计算机相关专业人员,可以顺着这个思路走下去;如果不是的话可以放弃了,等后续版本看能不能解决这个问题吧。

Reply View the author
daniel_shao
deepin
2021-07-13 06:20
#7
野狼

这些资料都看过,但是都没有提供一个解决问题的办法

有可能是端口占用了,或者网卡驱动出了问题,也可能内核模块没有安装成功。建议先找到哪里出错了,再对症下药。要不然只能硬试了

Reply View the author
野狼
deepin
2021-07-13 06:23
#8
神末shenmo

sudo pkill uengine*

先杀死进程

uengine session(这句可能打错字了,你可以先打uengine看帮助看看是哪个)

如果这个命令报错,再看看问题在哪

uengine session-manager 出现下面的

pathis:  

"" can not find qm files ("_zh_CN.qm", "_zh.qm")

begin Mon Jul 12 22:21:13 2021

 UBoxGetSensorList(pid 18911 tid 18911) sensor list length: 0

end Mon Jul 12 22:21:13 2021

 UBoxGetSensorList(pid 18911 tid 18911) sensor list length: 0

scale: 1.000000

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

QObject::moveToThread: Cannot move objects with a parent

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

"/home/xxx/.config/deepin/uengine/uengine-config.ini"

渲染器未选择: 默认使用主机渲染

display: 1920, 1080

[ 2021-07-12 14:21:14] [daemon.cpp:65@Run] bind: 地址已在使用

Reply View the author
野狼
deepin
2021-07-13 06:24
#9
daniel_shao

有可能是端口占用了,或者网卡驱动出了问题,也可能内核模块没有安装成功。建议先找到哪里出错了,再对症下药。要不然只能硬试了

ls -1 /dev/{ashmem,binder}  这个命令执行下去有

/dev/ashmem

/dev/binder

这两行

Reply View the author
wanzcong
deepin
2021-07-13 08:05
#10
daniel_shao

这是Anbox的一个老问题,看Github上的issue #754

前排提示:uengine是由开源项目Anbox二次开发得到的,所以Anbox很多子命令都可以直接用,错误信息也是相同的。

然而并没有解决办法?

Reply View the author
神末shenmo
deepin
Spark-App
Q&A Team
2021-07-13 16:43
#11
daniel_shao

有可能是端口占用了,或者网卡驱动出了问题,也可能内核模块没有安装成功。建议先找到哪里出错了,再对症下药。要不然只能硬试了

看起来他是端口占用,有什么解决方法么?日志在楼下

Reply View the author
daniel_shao
deepin
2021-07-13 22:13
#12
神末shenmo

看起来他是端口占用,有什么解决方法么?日志在楼下

如果只是要找到占用端口的进程,只需要用netstat命令去找就可以了。但是不知道它默认使用的端口是什么?这个可能要到源码中找。

我在自己的台式机上试了一下,uengine session-manager输出和他的如出一辙。但是能打开uengine图形界面,虽然没有网络(我以为是台式机没有无线网卡造成的)。所以我不确定他的不能打开界面是不是这个原因。

Reply View the author
daniel_shao
deepin
2021-07-13 22:18
#13
神末shenmo

看起来他是端口占用,有什么解决方法么?日志在楼下

$ uengine session-manager
pathis:  
"" can not find qm files ("_zh_CN.qm", "_zh.qm")
begin Tue Jul 13 14:13:49 2021
 UBoxGetSensorList(pid 28457 tid 28457) sensor list length: 0
end Tue Jul 13 14:13:50 2021
 UBoxGetSensorList(pid 28457 tid 28457) sensor list length: 0
scale: 1.000000
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
QObject::moveToThread: Cannot move objects with a parent
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
渲染器未选择: 默认使用主机渲染
display: 1920, 1080
[ 2021-07-13 06:13:51] [daemon.cpp:65@Run] bind: 地址已在使用

这是我的输出。但是我用uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity能打开界面,但是没有网络。(下面是设置界面截图)

[设置]界面截图(无网络)

Reply View the author
野狼
deepin
2021-07-14 02:59
#14
daniel_shao
$ uengine session-manager
pathis:  
"" can not find qm files ("_zh_CN.qm", "_zh.qm")
begin Tue Jul 13 14:13:49 2021
 UBoxGetSensorList(pid 28457 tid 28457) sensor list length: 0
end Tue Jul 13 14:13:50 2021
 UBoxGetSensorList(pid 28457 tid 28457) sensor list length: 0
scale: 1.000000
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
QObject::moveToThread: Cannot move objects with a parent
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
"/home/daniel/.config/deepin/uengine/uengine-config.ini"
渲染器未选择: 默认使用主机渲染
display: 1920, 1080
[ 2021-07-13 06:13:51] [daemon.cpp:65@Run] bind: 地址已在使用

这是我的输出。但是我用uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity能打开界面,但是没有网络。(下面是设置界面截图)

[设置]界面截图(无网络)

我输入uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity

就出现

[ 2021-07-13 10:57:38] [launch.cpp:269@operator()] Session manager failed to become ready

然后就上面截图的容器窗口进程无法就绪

Reply View the author
daniel_shao
deepin
2021-07-14 08:09
#15
野狼

我输入uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity

就出现

[ 2021-07-13 10:57:38] [launch.cpp:269@operator()] Session manager failed to become ready

然后就上面截图的容器窗口进程无法就绪

这种工程性的Bug没有源码太难调了……咱就反馈一下问题,等官方自己适配解决吧

Reply View the author