【问题标题】:chat using Laravel echo in my flutter app在我的颤振应用程序中使用 Laravel echo 聊天
【发布时间】:2021-01-04 09:55:09
【问题描述】:

我正在使用 laravel_echo 0.2.2 和 pusher 进行聊天。 在调试模式下它工作得很好,但在发布模式下它不起作用。

我的回声配置是:

echo = new Echo({
  'broadcaster': 'pusher',
  'client': pusherClient,
  "wsHost": 'api.salatkksa.com',
  "httpHost": 'api.salatkksa.com',
  "wsPort": 6001,
  'auth': {
    "headers": {'Authorization': 'Bearer $token'}
  },
  'authEndpoint': 'http://api.salatkksa.com/api/broadcasting/auth',
  "disableStats": true,
  "forceTLS": false,
  "enabledTransports": ['ws', 'wss']
});

和我的推送器配置:

PusherOptions options = PusherOptions(
    host: 'api.salatkksa.com',
    port: 6001,
    encrypted: false,
    auth: PusherAuth('http://api.salatkksa.com/api/broadcasting/auth',
        headers: {'Authorization': 'Bearer $token'}));
pusherClient = FlutterPusher(
  "468adb0d5808c1",
  options,
  enableLogging: true,
);

我只是尝试将此添加到我的androidmanafist.xml 中的application 标记中:

android:usesCleartextTraffic="true" 

那么,如果我添加 SSL 证书并使用加密消息传递,它会起作用吗?

【问题讨论】:

    标签: flutter networking websocket laravel-echo


    【解决方案1】:

    我通过使用 R8 或 proguard 启用代码混淆来解决它,并添加以下规则:

    android/app/build.gradle:

    buildTypes {
      release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
      }
    }
    

    如果您没有proguard-rules.pro,则在此路径中创建一个android/app/proguard-rules.pro 并添加以下内容:

    -keep class com.github.heywhy.flutter_pusher.** { *; }
    

    【讨论】:

    • 您能否分享一些资源,让我可以了解更多关于使用 laravel echo 和 Flutter 构建聊天系统的信息,以用于 Flutter 应用程序。真的很感激同样的:)
    猜你喜欢
    • 2020-08-20
    • 2021-11-28
    • 2022-06-10
    • 1970-01-01
    • 2020-11-05
    • 2021-12-16
    • 2022-01-15
    • 2020-06-20
    • 1970-01-01
    相关资源
    最近更新 更多