public async void PreferredSubscriptionBtn_Clicked(object sender, EventArgs e) { try { var action = await DisplayActionSheet("Operation", "Cancel", null, Enum.GetNames(typeof(CallPreferredVoiceSubscription))); Log.Debug(Globals.LogTag, "Action: " + action); if (action != null) { CallPreferredVoiceSubscription subscription = (CallPreferredVoiceSubscription)Enum.Parse(typeof(CallPreferredVoiceSubscription), action); Log.Debug(Globals.LogTag, "CallPreferredVoiceSubscription start -- Set subscription to " + subscription); await call.SetCallPreferredVoiceSubscription(subscription); CallPreferredVoiceSubscription subs = call.GetCallPreferredVoiceSubscription(); Log.Debug(Globals.LogTag, "Current CallPreferredVoiceSubscription = " + subs); if (subs == subscription) { Log.Debug(Globals.LogTag, "CallPreferredVoiceSubscription set and get subscription is successful"); } else { Log.Debug(Globals.LogTag, "CallPreferredVoiceSubscription set and get subscription has failed"); } } } catch (Exception ex) { Log.Debug(Globals.LogTag, "PreferredVoiceSubscription ,exception = " + ex.ToString()); } }
internal static extern int SetCallPreferredVoiceSubs(IntPtr handle, CallPreferredVoiceSubscription subscription, TapiResponseCallback cb, IntPtr userData);
internal static extern int GetCallPreferredVoiceSubs(IntPtr handle, out CallPreferredVoiceSubscription subscription);
internal static extern Telephony.TelephonyError GetPreferredVoiceSubscription(IntPtr handle, out CallPreferredVoiceSubscription callSub);