Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crashed after lauched jitsi-meet-flutter-sdk app ,the official jitsi-meet-flutter-sdk android app example works well, HELPS! #71

Open
hzgdeerHo opened this issue Jul 17, 2024 · 9 comments

Comments

@hzgdeerHo
Copy link

GREAT PROJECTS!
Crashed after lauched jitsi-meet-flutter-sdk app ,the official jitsi-meet-flutter-sdk android app example works well,
I integrated the jitsi-meet-flutter-sdk in my project , the related code:
Widget _buildDisconnectButton(Client client) {
// ======临时调试,自动接受新的连接启动 Jitsi Meet 会议

final jitsiMeet = JitsiMeet();
// 配置默认的会议选项
var defaultOptions = JitsiMeetConferenceOptions(
  // serverURL: "https://meet.xiptai.com.cn",
  // room: "xipt6",
  // userInfo: JitsiMeetUserInfo(
  //   displayName: "jjdl1", // 用户显示名称
  // ),
  // configOverrides: {
  //   // "startWithAudioMuted": false,
  //   // "startWithVideoMuted": false,
  //   "subject": "Jitsi with Flutter",
  // },
  // featureFlags: {
  //   // "toolbox.enabled": true,
  //   // "welcomepage.enabled": false,
  //   // "prejoinpage.enabled": false,
  //   // "meeting-password.enabled": false,
  //   // "resolution": 300,
  // }

  serverURL: "https://meet.xiptai.com.cn",
  room: "xipt6",
  configOverrides: {
    "startWithAudioMuted": true,
    "startWithVideoMuted": true,
    "subject": "JitsiwithFlutter",
    "localSubject": "localJitsiwithFlutter",
  },
  featureFlags: {
    "unsaferoomwarning.enabled": false,
    "security-options.enabled": false
  },
  userInfo: JitsiMeetUserInfo(
      displayName: "Flutter user", email: "[email protected]"),
);

// jitsiMeet.join(defaultOptions);

final disconnectButton = ElevatedButton.icon(
  style: ButtonStyle(backgroundColor: MaterialStatePropertyAll(Colors.red)),
  icon: const Icon(Icons.close),
  onPressed: () {
    //====临时调试禁用停止服务按钮
    // bind.cmCloseConnection(connId: client.id);
    // gFFI.invokeMethod("cancel_notification", client.id);
    jitsiMeet.join(defaultOptions);
  },
  label: Text(translate("Disconnect")),
);
final buttons = [disconnectButton];
if (client.inVoiceCall) {
  buttons.insert(
    0,
    ElevatedButton.icon(
      style: ButtonStyle(
          backgroundColor: MaterialStatePropertyAll(Colors.red)),
      icon: const Icon(Icons.phone),
      label: Text(translate("Stop")),
      onPressed: () {
        bind.cmCloseVoiceCall(id: client.id);
        gFFI.invokeMethod("cancel_notification", client.id);
      },
    ),
  );
}

but when I pressed the button, I got errors always :E/JitsiMeetSDK(31095): at com.facebook.soloader.nativeloader.SystemDelegate.loadLibrary(SystemDelegate.java:24)
E/JitsiMeetSDK(31095): at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:52)
E/JitsiMeetSDK(31095): at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:30)
E/JitsiMeetSDK(31095): at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:869)
E/JitsiMeetSDK(31095): at com.facebook.react.bridge.ReactBridge.staticInit(ReactBridge.java:34)
E/JitsiMeetSDK(31095): at com.facebook.react.bridge.NativeMap.(NativeMap.java:17)
E/JitsiMeetSDK(31095): at com.facebook.react.jscexecutor.JSCExecutorFactory.create(JSCExecutorFactory.java:25)
E/JitsiMeetSDK(31095): at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:1112)
E/JitsiMeetSDK(31095): at java.lang.Thread.run(Thread.java:930)
I/InsetsController(31095): ViewUI_insets updateState new source: InsetsSource: {mType=ITYPE_STATUS_BAR, mFrame=[0,0][720,70], mVisible=true}
I/InsetsController(31095): ViewUI_insets updateState new source: InsetsSource: {mType=ITYPE_NAVIGATION_BAR, mFrame=[0,0][0,0], mVisible=false}
D/InputEventReceiver(31095): dispatchInputInterval 1000000
I/Process (31095): Sending signal. PID: 31095 SIG: 9
Lost connection to device.####
My flutter projects dependencies:

name: flutter_hbb
description: Your Remote Desktop Software

The following line prevents the package from being accidentally published to

pub.dev using pub publish. This is preferred for private packages.

publish_to: "none" # Remove this line if you wish to publish to pub.dev

The following defines the version and build number for your application.

A version number is three numbers separated by dots, like 1.2.43

followed by an optional build number separated by a +.

Both the version and the builder number may be overridden in flutter

build by specifying --build-name and --build-number, respectively.

In Android, build-name is used as versionName while build-number used as versionCode.

Read more about Android versioning at https://developer.android.com/studio/publish/versioning

In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.

Read more about iOS versioning at

https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html

1.1.9-1 works for android, but for ios it becomes 1.1.91, need to set it to 1.1.9-a.1 for iOS, will get 1.1.9.1, but iOS store not allow 4 numbers

version: 1.2.6+42

environment:
sdk: '^3.1.0'

dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter

ffi: ^2.1.0
path_provider: ^2.1.1
external_path: ^1.0.3
provider: ^6.0.5
tuple: ^2.0.0
wakelock_plus: ^1.1.3
#firebase_analytics: ^9.1.5
package_info_plus: ^4.2.0
url_launcher: ^6.2.1
toggle_switch: ^2.1.0
dash_chat_2:
git:
url: https://github.com/rustdesk-org/Dash-Chat-2
draggable_float_widget: ^0.1.0
settings_ui: ^2.0.2
flutter_breadcrumb: ^1.0.1
http: ^1.1.0
qr_code_scanner: ^1.0.0
zxing2: ^0.2.0
image_picker: ^0.8.5
image: ^4.0.17
back_button_interceptor: ^6.0.1
flutter_rust_bridge: "1.80.1"
window_manager:
git:
url: https://github.com/rustdesk-org/window_manager
desktop_multi_window:
git:
url: https://github.com/rustdesk-org/rustdesk_desktop_multi_window
freezed_annotation: ^2.0.3
flutter_custom_cursor: ^0.0.4
window_size:
git:
url: https://github.com/google/flutter-desktop-embedding.git
path: plugins/window_size
ref: a738913c8ce2c9f47515382d40827e794a334274
get: ^4.6.5
visibility_detector: ^0.4.0+2
contextmenu: ^3.0.0
desktop_drop: ^0.4.4
scroll_pos: ^0.4.0
debounce_throttle: ^2.0.0
file_picker: ^5.1.0
flutter_svg: ^2.0.5
flutter_improved_scrolling:
# currently, we use flutter 3.10.0+.
#
# for flutter 3.0.5, please use official version(just comment code below).
# if build rustdesk by flutter >=3.3, please use our custom pub below (uncomment code below).
git:
url: https://github.com/rustdesk-org/flutter_improved_scrolling
uni_links: ^0.5.1
uni_links_desktop: 0.1.6
path: ^1.8.1
auto_size_text: ^3.0.0
bot_toast: ^4.0.3
win32: any
password_strength: ^0.2.0
flutter_launcher_icons: ^0.13.1
flutter_keyboard_visibility: ^5.4.0
texture_rgba_renderer: ^0.0.16
percent_indicator: ^4.2.2
dropdown_button2: ^2.0.0
flutter_gpu_texture_renderer:
git:
url: https://github.com/21pages/flutter_gpu_texture_renderer
ref: 38951317afe79d953ab25733667bd96e172a80d3
uuid: ^3.0.7
auto_size_text_field: ^2.2.1
flex_color_picker: ^3.3.0
dynamic_layouts:
git:
url: https://github.com/21pages/dynamic_layouts.git
ref: 24cb88413fa5181d949ddacbb30a65d5c459e7d9
pull_down_button: ^0.9.3
device_info_plus: ^9.1.0
qr_flutter: ^4.1.0
flutter_background_service: ^0.2.0
jitsi_meet_flutter_sdk: ^0.4.2

dev_dependencies:
icons_launcher: ^2.0.4
#flutter_test:
#sdk: flutter
build_runner: ^2.4.6
freezed: ^2.4.2

flutter_lints: ^2.0.2

flutter_lints: ^3.0.1
ffigen: ^8.0.2

rerun: flutter pub run flutter_launcher_icons

flutter_icons:
image_path: "../res/icon.png"
remove_alpha_ios: true
android: true
ios: true
windows:
generate: true
macos:
image_path: "../res/mac-icon.png"
generate: true
linux: true
web:
generate: true

For information on the generic Dart part of this file, see the

following page: https://dart.dev/tools/pub/pubspec

The following section is specific to Flutter.

flutter:

The following line ensures that the Material Icons font is

included with your application, so that you can use the icons in

the material Icons class.

uses-material-design: true

To add assets to your application, add an assets section, like this:

assets:
- assets/

fonts:
- family: GestureIcons
fonts:
- asset: assets/gestures.ttf
- family: Tabbar
fonts:
- asset: assets/tabbar.ttf
- family: PeerSearchbar
fonts:
- asset: assets/peer_searchbar.ttf
- family: AddressBook
fonts:
- asset: assets/address_book.ttf

An image asset can refer to one or more resolution-specific "variants", see

https://flutter.dev/assets-and-images/#resolution-aware.

For details regarding adding assets from package dependencies, see

https://flutter.dev/assets-and-images/#from-packages

To add custom fonts to your application, add a fonts section here,

in this "flutter" section. Each entry in this list should have a

"family" key with the font family name, and a "fonts" key with a

list giving the asset and other descriptors for the font. For

example:

fonts:

- family: Schyler

fonts:

- asset: fonts/Schyler-Regular.ttf

- asset: fonts/Schyler-Italic.ttf

style: italic

- family: Trajan Pro

fonts:

- asset: fonts/TrajanPro.ttf

- asset: fonts/TrajanPro_Bold.ttf

weight: 700

For details regarding fonts from package dependencies,

see https://flutter.dev/custom-fonts/#from-packages

dependency_overrides:
intl: 0.19.0

@OrionWambert
Copy link

Any news please ? I have the same issue

@Lukaalishi
Copy link

jits on android crash, please help

@saghul
Copy link
Member

saghul commented Aug 7, 2024

Can you please paste the full error log?

@bunthoeun-develop
Copy link

I got the same problem now. Any news please?

@bunthoeun-develop
Copy link

@saghul I got error on apk release, but it works fine on apk debug. App was reloaded after click join room.

@saghul
Copy link
Member

saghul commented Aug 19, 2024

Are you using ProGuard? If so, are you using our recommended rules?

@bunthoeun-develop
Copy link

@saghul No, I'm not using it. Can I see it?

@saghul
Copy link
Member

saghul commented Aug 20, 2024

Here you go: https://github.com/jitsi/jitsi-meet/blob/master/android/app/proguard-rules.pro

@progressify
Copy link

I have the same problem and I have resolved with this link:
https://developer.android.com/build/shrink-code#enable

Because I have updated gradle to 7.6.3 and probably the support to proguard is changed (in the syntax at least)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants