#flutter #networking #websocket #laravel-echo
#flutter #сеть #websocket #laravel-echo
Вопрос:
Я работаю над чатом с использованием laravel_echo 0.2.2
и pusher. в режиме отладки он работает просто отлично, но в режиме выпуска он не работает.
мои конфигурации echo:
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']
});
и мои конфигурации pusher:
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-сертификат и использую зашифрованный обмен сообщениями, он будет работать или нет?
Ответ №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.** { *; }
Комментарии:
1. Можете ли вы поделиться каким-либо ресурсом, где я могу узнать больше о создании системы чата с помощью laravel echo и flutter для приложения flutter. Был бы очень признателен за то же самое 🙂