Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android WireApp日志未满足链接错误:“0”;wcall设置视频发送状态;尝试视频通话时_Java_Android_Chat - Fatal编程技术网

Java Android WireApp日志未满足链接错误:“0”;wcall设置视频发送状态;尝试视频通话时

Java Android WireApp日志未满足链接错误:“0”;wcall设置视频发送状态;尝试视频通话时,java,android,chat,Java,Android,Chat,我已从以下存储库构建wire应用程序: 使用以下构建方向: 如何在本地构建查看wire android存储库。切换到 从签出文件夹运行最新的relase branch版本。/gradlew assembleProdRelease。这将引入所有必要的依赖项 来自Maven 我尝试了发布分支: git clone https://github.com/wireapp/wire-android.git --branch release 08-25 16:01:51.748 406-4592/? E

我已从以下存储库构建wire应用程序:

使用以下构建方向:

如何在本地构建查看wire android存储库。切换到 从签出文件夹运行最新的relase branch版本。/gradlew assembleProdRelease。这将引入所有必要的依赖项 来自Maven

我尝试了发布分支:

git clone https://github.com/wireapp/wire-android.git --branch release
08-25 16:01:51.748 406-4592/? E/AudioALSAPlaybackHandlerBase: -getHardwareBufferInfo(), pcm_get_htimestamp fail, ret = -1, pcm_get_error = 
大师:

git clone https://github.com/wireapp/wire-android.git
最初,两个版本都给出了错误:

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
        at java.lang.Thread.run(Thread.java:764)
     Caused by: java.lang.UnsatisfiedLinkError: Error looking up function 'wcall_set_video_send_state': undefined symbol: wcall_set_video_send_state
        at com.sun.jna.Function.<init>(Function.java:245)
        at com.sun.jna.NativeLibrary.getFunction(NativeLibrary.java:566)
C:\work\wire音频视频信号>make dist android mk/target.mk:167: ***未知主机系统。停下来

mk/target.mk看起来像:

# Start by auto-determining host system and arch.
ifeq ($(HOST_OS),)
HOST_UNAME := $(shell uname)
ifeq ($(HOST_UNAME),Darwin)
HOST_OS := osx
else
ifeq ($(HOST_UNAME),Linux)
HOST_OS := linux
else
$(error Unknown host system)
endif
endif
endif
Makefile似乎不支持Windows,所以我将尝试从Linux机器构建它,看看这是否有帮助

更新2:

它的确在Ubuntu上构建得更好,但它最终会因为抱怨编译器参数而死去。[对不起,我手头没有这个错误]

但我在这里找到了为Android/ARM构建的库的二进制副本:

然而,这些库似乎也不能解决这个问题

更新3:

尝试了以下操作:

  • 从上面的链接下载了.aar文件的最新版本
  • 将其重命名为avs.aar
  • 安装在app/libs中
  • 取消对行的注释:“实现(名称:'avs',分机:'aar')”
  • 但我得到了一个错误:

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
            at java.lang.Thread.run(Thread.java:764)
         Caused by: java.lang.UnsatisfiedLinkError: Error looking up function 'wcall_set_video_send_state': undefined symbol: wcall_set_video_send_state
            at com.sun.jna.Function.<init>(Function.java:245)
            at com.sun.jna.NativeLibrary.getFunction(NativeLibrary.java:566)
    
    程序类型已存在:com.waz.avs.VideoCapturer$4 消息{kind=错误,text=程序类型已存在: com.waz.avs.VideoCapturer$4,sources=[未知源文件],工具 name=可选。of(D8)}

    下面还有对AVS库的另一个引用,如果您注释掉,错误就会消失

    然而,这些步骤都不能解决问题

    现在我将尝试构建发布分支的旧版本

    更新4:发布分支:2.41.359 [最新的非测试版本]

    • 不再在Android studio中编译,因为layout目录中的一些XML文件格式不正确。这些文件必须被修复并签入Git,因为构建过程会从Git签出所有文件
    • 该应用程序最初运行正常并允许登录,但总是在编辑设备屏幕后崩溃。每次你试图打开应用程序时,它都会崩溃
    08-25 14:51:02.142 29066-29109/?E/AndroidRuntime:致命异常: 螺纹-4 进程:com.wire,PID:29066 java.lang.NullPointerException:尝试在null对象上调用接口方法“int com.waz.call.RequestHandler.request$1d4ff469()” 参考 位于com.waz.call.FlowManager.request(FlowManager.java:365)

    注意:编辑设备屏幕似乎不是问题的原因,因为我删除了web应用程序中的所有设备,但随后2.41.359在手机上崩溃,而没有显示编辑设备屏幕

    以下线程中提到了此问题:

    建议使用生产版本中的avslib.so文件,因为提供的文件不足以运行项目

    所以我从他们的网站上下载了APK:

    它的版本是:3.15.634[比应用商店中的版本旧:3.16.638,不过希望这不重要]

    对于任何不知道的人来说,APK只是一个ZIP文件,因此我将其重命名为from.APK to.ZIP以获取libavs.so:

    根目录:

    Libs目录:

    手臂方向:

    提取libavs.so后,我将构建工具生成的wire-prod-release-2.41.99999的未签名版本重命名为wire-prod-release-2.41.99999-avs-mod.zip,删除了旧的libavs.so,并将其替换为我刚从应用程序的生产版本中获取的版本。我将其重新命名为.pkg,然后运行以下命令对其进行签名:

    java -jar \uber-apk-signer-0.8.4.jar --apks wire-prod-release-2.41.99999-avs-mod.apk -debug
    
    结果不错,2.41.359不再崩溃。但是,我仍然无法启动任何音频或视频通话。在发布分支的最新版本中发现相同错误:

    git clone https://github.com/wireapp/wire-android.git --branch release
    
    08-25 16:01:51.748 406-4592/? E/AudioALSAPlaybackHandlerBase: -getHardwareBufferInfo(), pcm_get_htimestamp fail, ret = -1, pcm_get_error = 
    
    作为一个健全的检查,我安装了生产版本:3.15.634用于额外的libavs.so,它能够进行音频和视频通话。[GooglePlay上的版本:3.16.638也适用于音频和视频…]


    有什么想法吗?

    经过几天的尝试,我找到了一种方法来构建该项目,使其能够启动音频和视频通话:

    程序:

    • git克隆——分支发布
    • cd-wire android
    • git checkout 2.40.357
    • 将项目加载到Android Studio中
    • 编辑文件res/layout/collection\u file\u asset.xml
    • 移到版权注释上方,因为文件必须以XML标记开头
    • git添加
    • git提交-m“修复了语法错误”
    • gradlew汇编程序模块释放
    • java-jar\uber-apk-signer-0.8.4.jar--apks-wire-prod-release-2.40.99999.apk-debug
    • adb安装wire-prod-release-2.40.99999-aligned-debugSigned.apk
    其他说明:

    • 由于Scala错误,主机当前未生成
    • 当前版本分支生成了一个稳定的应用程序,但在点击视频图标时会导致以下错误:“E/AudioALSAPlaybackHandlerBase:-getHardwareBufferInfo(),pcm\u get\u htimestamp fail,ret=-1,pcm\u get\u error=”
    • 最新的稳定版本2.41.359不起作用,因为它在每次应用程序启动时都会崩溃:“AndroidRuntime:致命异常:Thread-4进程:com.wire,PID:29066 java.lang.NullPointerException:尝试调用接口方法'int com.waz.call.RequestHandler.request$1d4ff469()'在com.waz.call.FlowManager.request(FlowManager.java:365)上的空对象引用上使用'
    • 虽然building 2.40.357支持音频和视频功能,但它不稳定,在接听和拨打电话时经常崩溃。我已经和其他人谈过了