为什么Android-Things应用在新的ConnectionFactory上崩溃

时间:2019-04-29 06:50:35

标签: rabbitmq android-things

尝试在AndroidThings项目中使用RabbitMQ,但应用程序在崩溃 ConnectionFactory工厂=新的ConnectionFactory(); 控制台错误A / libc:致命信号11(SIGSEGV),代码1,TID 3083(an.rabbitmqtest),pid 3083(an.rabbitmqtest)中的故障地址0x68

我在清单中包含了uses-permission android:name =“ android.permission.INTERNET”

我的测试项目仅用于连接。

Gradle包含实现'com.rabbitmq:amqp-client:+'

import android.app.Activity;
import android.os.Bundle;

import java.net.URISyntaxException;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;

import com.rabbitmq.client.ConnectionFactory;


public class MainActivity extends Activity {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    setupConnectionFactory();

  }

  // next line is the problem!
  ConnectionFactory factory = new ConnectionFactory();

  private void setupConnectionFactory() {
    String uri = "CLOUDAMQP_URL";
    try {
        factory.setAutomaticRecoveryEnabled(false);
        factory.setUri(uri);
    } catch (KeyManagementException | NoSuchAlgorithmException | 
             URISyntaxException e1) {
        e1.printStackTrace();
    }
  }
}

1 个答案:

答案 0 :(得分:0)

我现在已经通过在Gradle中强制使用旧的AMQP客户端库来解决此问题。 com.rabbitmq:amqp-client:4.11。+ 也许是最新的5.7 AMQP库中的错误,我正在运行JRE 1.8。