Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
BC
public
liblinphone
Commits
655b0017
Commit
655b0017
authored
3 years ago
by
Sylvain Berfini
Browse files
Options
Download
Patches
Plain Diff
Delay reload sound devices on Android to workaround wrong AudioManager.getDevices() array
parent
d3cc4f76
master
compat/ios_app_5_3
deleteme
feature/18-flexiapiclient-auth-token
feature/51-vcard-provisioning-fix
feature/AEC3
feature/account_manager_services_devices_list
feature/add-security-alert-param
feature/added_event_log_deleted_callback
feature/address-refactoring
feature/allow-raw-mwi-notification
feature/audio-conference-package
feature/authenticated-remote-provisioning
feature/basic_auth
feature/client_audio_mixer
feature/client_video_mixer
feature/conference-info-db
feature/cpp_threadsafe
feature/encrypted_conference
feature/ephemeral_participant
feature/fec
feature/fec_adaptation
feature/ics_update_improved
feature/keep-configuration-tester-51
feature/key_exchange_protocol_identification
feature/ldap_failover
feature/lime_status_by_uri
feature/load-static-ms2-plugins
feature/media_encryption_settings_on_account
feature/medialess
feature/nix-flake
feature/provisioning_header_for_fam1.4
feature/python_wrapper
feature/python_wrapper_5.1
feature/python_wrapper_5.3
feature/remote_provisioning_headers
feature/rework_ephemeral
feature/rfc_9078
feature/screensharing_clean
feature/screensharing_packet_router
feature/screensharing_signalling
feature/support_sfu
feature/swift_push_tests_5_1
feature/swift_push_unit_tests
feature/test-new-ccmp-deployment
feature/test_improvement
feature/timeline
feature/to-delete-compile-last-wrapper
feature/unitTestInCpp
feature/vcard-contacts-list
feature/video_codec_call_params
feature/wrap-account-creator-core-functions
fix/ECC-for-desktop
fix/addEvent_error
fix/add_debug_logs
fix/android_window
fix/audio_codec_debug
fix/audio_lost
fix/audio_routes
fix/audio_toggle_conf
fix/auth_info_finding
fix/avconf-crashes
fix/backport_50
fix/broadcast_flexisip
fix/bugfixes-from-5.1
fix/bundle_mode_fix
fix/call_history_after_core_stop
fix/call_recovery_in_multi_account_case
fix/call_repair
fix/cancel_via_header
fix/ccmp_conference_description_master
fix/chat_lesage_local_address_no_contact
fix/chat_room_null_conference_address
fix/chat_test
fix/chatroom_const_params
fix/check-tests
fix/conf_unschedule_video
fix/conference_called_after_joining_5_3
fix/conference_leak
fix/conference_with_all_listeners
fix/conference_without_advanced_im
fix/conference_without_bundle_mode
fix/copy_message_id_content_operator
fix/crash_calllog
fix/crash_csrc_changed
fix/crash_decline_call
fix/crash_terminate
fix/crash_tests
fix/database
fix/db_friend_list_fix
fix/default_options
fix/delete_sensitive_logs
fix/didUpdatePushCredentials_debug_investigation
fix/doc_upload
fix/double_invite
fix/dtls_default_path
fix/empty_authinfo
fix/encrypted_chat_subscription_failed
fix/encryption-changed-callback
fix/enum_swift_wrapper
fix/error_feedback_flexiapi
fix/extra_audio_route_logs_master
fix/fixes-from-5.0.10
fix/flexi_api
fix/flexisip-tester-2.3
fix/flexisip_build
fix/fold-and-trim-ics
fix/force_shared_lib_python_wrapper
fix/force_terminate_duplicated_call
fix/friend_lists
fix/gcc_14
fix/h265-glitches
fix/ice-test-not-reliable
fix/identity-address-performance
fix/identity_address_without_gruu
fix/import-from-legacy-db
fix/improved_custom_header_test
fix/ios_foreground_push_incoming_received
fix/ios_reactions_notif
fix/ios_shared_core_reactions
fix/itc-misuse
fix/java_jni_wrapper
fix/jni_weak_global_ref_crash
fix/json_static
fix/jvm_cpp_wrapper_on_android
fix/lime_chat_room_left_notify
fix/local-permission-detection
fix/log_file_updates
fix/longer-random-username-tests
fix/made_conference_get_state_public
fix/magic_search_clone_crash
fix/mandatory_encryption
fix/master_push
fix/media_server_ip
fix/message_not_sent_rework
fix/mid-warnings
fix/no-longer-use-deprecated-findpythoninterp-cmake-module
fix/no_ldap_tester
fix/no_unregister_if_remote_push_allowed
fix/no_unregister_if_remote_push_allowed_5_0
fix/non_last_call_active
fix/notify-stats
fix/null_pointer_expcetion
fix/participant_removed
fix/participant_video_no_conf_event_pkg
fix/pause-player
fix/paused_by_remote_no_rtp_timeout_master
fix/pdb_5_3
fix/performance_improvements
fix/plugin_timeout
fix/prack_auth
fix/prevent_notifying_same_presence_notify
fix/proxy_cfg_contact
fix/python_build_macos
fix/python_const_build_warning
fix/qt_crash
fix/quickfix_52
fix/recorder_desktop
fix/remote_media_changed_notify
fix/rewrite-tone-manager
fix/ring-category
fix/rtt_message
fix/screen_jul
fix/sdp_direction
fix/select-ip
fix/setlocale_utf8
fix/sip_address_table_creation_refused_utf8mb6_mariadb5.5
fix/slow-tests
fix/srtp_key_length
fix/startup_restart
fix/stream-deletion
fix/stream_allocation_no_label
fix/stream_append
fix/subject_not_changed
fix/switch_data_sync_to_short_service
fix/test
fix/test_flexiapi_backport
fix/test_video_file_stream
fix/timestamp_windows
fix/toggle_video
fix/tone-indications
fix/tone-manager-crash
fix/transcient-video-stretching
fix/transfer_state
fix/tunnel_deadlock
fix/tunnel_tester
fix/unsubscribe_upon_core_stop
fix/update-check
fix/update_calllog_remote_address
fix/utf8_conf
fix/uuid4-generation
fix/video_conf_fixes
fix/video_refused
fix/videoconf_double
fix/vp8-threads
fix/webrtc-ice
fix/win_crash_search
fix/window_build_dec24
fix/window_id_creation
fix/wrong_timestamp
fix/zrtp_call
hotfix/gh_issues_templates_syntax_error
hotfix/lime-db-path
improve/encrypted_chat_multipart_selection
release/5.0
release/5.1
release/5.2
release/5.3
release/5.4
test/ansible
test/b2bua
test/call_no_routes
test/flexisip-release-candidate-2-4
test/flexisip_b2bua_h264
test/lime_double_digest_auth_challenge
tmp/pq
tmp/workaround_missing_tester_log_message_bug
tmp/zrtp_stats_make_visible
5.5.0-alpha
5.4.0
5.4.0-beta
5.4.0-alpha
5.3.106
5.3.105
5.3.104
5.3.103
5.3.102
5.3.101
5.3.100
5.3.99
5.3.97
5.3.96
5.3.95
5.3.94
5.3.93
5.3.92
5.3.91
5.3.90
5.3.89
5.3.88
5.3.87
5.3.86
5.3.85
5.3.84
5.3.83
5.3.81
5.3.79
5.3.78
5.3.77
5.3.76
5.3.75
5.3.74
5.3.73
5.3.72
5.3.71
5.3.70
5.3.69
5.3.68
5.3.67
5.3.66
5.3.65
5.3.64
5.3.63
5.3.62
5.3.61
5.3.60
5.3.59
5.3.58
5.3.57
5.3.56
5.3.55
5.3.54
5.3.53
5.3.52
5.3.51
5.3.50
5.3.49
5.3.48
5.3.46
5.3.45
5.3.44
5.3.43
5.3.42
5.3.41
5.3.40
5.3.39
5.3.38
5.3.37
5.3.36
5.3.35
5.3.34
5.3.33
5.3.32
5.3.30
5.3.29
5.3.28
5.3.27
5.3.26
5.3.25
5.3.24
5.3.23
5.3.22
5.3.21
5.3.19
5.3.18
5.3.17
5.3.16
5.3.15
5.3.14
5.3.13
5.3.12
5.3.11
5.3.10
5.3.9
5.3.8
5.3.7
5.3.6
5.3.5
5.3.4
5.3.3
5.3.2
5.3.1
5.3.0
5.3.0-beta
5.3.0-alpha
5.2.114
5.2.113
5.2.112
5.2.111
5.2.110
5.2.109
5.2.108
5.2.107
5.2.106
5.2.105
5.2.104
5.2.103
5.2.102
5.2.101
5.2.100
5.2.99
5.2.98
5.2.97
5.2.96
5.2.95
5.2.94
5.2.93
5.2.92
5.2.91
5.2.90
5.2.89
5.2.88
5.2.87
5.2.86
5.2.85
5.2.84
5.2.83
5.2.82
5.2.81
5.2.80
5.2.79
5.2.78
5.2.77
5.2.75
5.2.73
5.2.72
5.2.71
5.2.70
5.2.69
5.2.68
5.2.67
5.2.66
5.2.65
5.2.64
5.2.63
5.2.62
5.2.61
5.2.59
5.2.58
5.2.57
5.2.56
5.2.54
5.2.53
5.2.52
5.2.51
5.2.50
5.2.49
5.2.47
5.2.46
5.2.45
5.2.44
5.2.42
5.2.41
5.2.40
5.2.39
5.2.37
5.2.33
5.2.32
5.2.30
5.2.29
5.2.28
5.2.27
5.2.26
5.2.25
5.2.23
5.2.22
5.2.21
5.2.20
5.2.19
5.2.18
5.2.17
5.2.16
5.2.15
5.2.14
5.2.13
5.2.12
5.2.11
5.2.10
5.2.9
5.2.7
5.2.6
5.2.5
5.2.4
5.2.3
5.2.2
5.2.1
5.2.0
5.2.0-beta
5.2.0-alpha
5.1.73
5.1.72
5.1.71
5.1.70
5.1.68
5.1.67
5.1.66
5.1.65
5.1.64
5.1.63
5.1.62
5.1.61
5.1.59
5.1.58
5.1.57
5.1.56
5.1.55
5.1.54
5.1.53
5.1.52
5.1.51
5.1.50
5.1.49
5.1.48
5.1.46
5.1.45
5.1.44
5.1.43
5.1.42
5.1.41
5.1.38
5.1.37
5.1.36
5.1.35
5.1.34
5.1.33
5.1.32
5.1.31
5.1.30
5.1.28
5.1.24
5.1.23
5.1.22
5.1.21
5.1.20
5.1.19
5.1.17
5.1.16
5.1.15
5.1.14
5.1.13
5.1.12
5.1.11
5.1.10
5.1.9
5.1.8
5.1.7
5.1.6
5.1.5
5.1.4
5.1.3
5.1.2
5.1.1
5.1.0
5.1.0-beta
5.1.0-alpha
5.0.71
5.0.70
5.0.69
5.0.68
5.0.67
5.0.66
5.0.65
5.0.64
5.0.63
5.0.62
5.0.61
5.0.60
5.0.59
5.0.58
5.0.57
5.0.56
5.0.55
5.0.53
5.0.52
5.0.51
5.0.50
5.0.49
5.0.47
5.0.46
5.0.45
5.0.44
5.0.43
5.0.42
5.0.41
5.0.40
5.0.39
5.0.38
5.0.37
5.0.36
5.0.35
5.0.34
5.0.32
5.0.31
5.0.30
5.0.29
5.0.28
5.0.27
5.0.26
5.0.25
5.0.24
5.0.23
5.0.22
5.0.21
5.0.19
5.0.18
5.0.17
5.0.16
5.0.15
5.0.14
5.0.13
5.0.12
5.0.11
5.0.10
5.0.8
5.0.6
5.0.5
5.0.3
5.0.1
5.0.0
4.0.25
3 merge requests
!1398
Merge branch 'release/5.0' into master
,
!1397
Enforce the url parameter to enable FlexiAPI
,
!1392
Delay reload sound devices on Android to workaround wrong AudioManager.getDevices() array
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
wrappers/java/classes/org/linphone/core/tools/service/CoreManager.java
+20
-4
.../classes/org/linphone/core/tools/service/CoreManager.java
with
20 additions
and
4 deletions
wrappers/java/classes/org/linphone/core/tools/service/CoreManager.java
+
20
−
4
View file @
655b0017
...
...
@@ -29,6 +29,8 @@ import android.content.pm.PackageInfo;
import
android.content.pm.PackageManager
;
import
android.content.pm.ServiceInfo
;
import
android.os.Build
;
import
android.os.Handler
;
import
android.os.Looper
;
import
org.linphone.core.AudioDevice
;
import
org.linphone.core.Call
;
...
...
@@ -339,8 +341,15 @@ public class CoreManager {
public
void
onBluetoothHeadsetStateChanged
()
{
GlobalState
globalState
=
mCore
.
getGlobalState
();
if
(
globalState
==
GlobalState
.
On
||
globalState
==
GlobalState
.
Ready
)
{
Log
.
i
(
"[Core Manager] Bluetooth headset state changed, reload sound devices"
);
mCore
.
reloadSoundDevices
();
Log
.
i
(
"[Core Manager] Bluetooth headset state changed, waiting for 500ms before reloading sound devices"
);
final
Handler
handler
=
new
Handler
(
Looper
.
getMainLooper
());
handler
.
postDelayed
(
new
Runnable
()
{
@Override
public
void
run
()
{
Log
.
i
(
"[Core Manager] Reloading sound devices"
);
mCore
.
reloadSoundDevices
();
}
},
500
);
}
else
{
Log
.
w
(
"[Core Manager] Bluetooth headset state changed but current global state is "
,
globalState
.
name
(),
", skipping..."
);
}
...
...
@@ -349,8 +358,15 @@ public class CoreManager {
public
void
onHeadsetStateChanged
()
{
GlobalState
globalState
=
mCore
.
getGlobalState
();
if
(
globalState
==
GlobalState
.
On
||
globalState
==
GlobalState
.
Ready
)
{
Log
.
i
(
"[Core Manager] Headset state changed, reload sound devices"
);
mCore
.
reloadSoundDevices
();
Log
.
i
(
"[Core Manager] Headset state changed, waiting for 500ms before reloading sound devices"
);
final
Handler
handler
=
new
Handler
(
Looper
.
getMainLooper
());
handler
.
postDelayed
(
new
Runnable
()
{
@Override
public
void
run
()
{
Log
.
i
(
"[Core Manager] Reloading sound devices"
);
mCore
.
reloadSoundDevices
();
}
},
500
);
}
else
{
Log
.
w
(
"[Core Manager] Headset state changed but current global state is "
,
globalState
.
name
(),
", skipping..."
);
}
...
...
This diff is collapsed.
Click to expand it.
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Topics
Snippets