Uygulamada kurulum ekranını atlama
Azure İletişim Hizmetleri Kullanıcı Arabirimi Kitaplığı, kurulum ekranından geçmeden bir çağrıya katılma seçeneği sunar. Geliştiricileri, kullanıcıların herhangi bir kullanıcı etkileşimi olmadan doğrudan bir aramaya katılmasını sağlayan bir iletişim uygulaması oluşturma yetkisi verir. Bu özellik, kullanıcılar aramaya katılmadan önce kamera ve mikrofonun varsayılan durumunu (açık veya kapalı) yapılandırma özelliği de sağlar.
Bu makalede, uygulamanızda özelliği doğru şekilde ayarlamayı öğreneceksiniz.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Dağıtılan bir İletişim Hizmetleri kaynağı. İletişim Hizmetleri kaynağı oluşturun.
- Çağrı istemcisini etkinleştirmek için kullanıcı erişim belirteci. Kullanıcı erişim belirteci alma.
- İsteğe bağlı: Kullanıcı Arabirimi Kitaplığı bileşiklerini kullanmaya başlamaya yönelik hızlı başlangıcın tamamlanması.
Özelliği ayarlama
Daha fazla bilgi için açık kaynak Android Kullanıcı Arabirimi Kitaplığı'na ve örnek uygulama koduna bakın.
Kurulum ekranını atlama seçeneği
CallCompositeLocalOptions
, Kullanıcı Arabirimi Kitaplığı'nın Boole kullanarak kurulum ekranını atlama özelliğini ayarlayan bir seçenek sarmalayıcıdır. Varsayılan olarak, kurulum ekranını atlama özelliği olarak false
ayarlanır. Kurulum ekranını atlama deneyimini sağlamak için Boole true
değeriyle ayarlamanız skipSetupScreen
gerekir.
Uygulamanızı, kullanıcı bir aramaya katılmaya çalıştığında sorunsuz bir birleştirme deneyimi için mikrofon izni verilecek şekilde derlemenizi öneririz.
Özelliğini kullanmak için Boole değerini ile geçirin skipSetupScreen
CallCompositeLocalOptions
ve içine yerleştirin callComposite.launch
.
import com.azure.android.communication.ui.calling.models.CallCompositeLocalOptions
val localOptions: CallCompositeLocalOptions = CallCompositeLocalOptions()
.setSkipSetupScreen(true)
callComposite.launch(callLauncherActivity, remoteOptions, localOptions)
Kamera ve mikrofon yapılandırması için varsayılan seçenekler
Varsayılan olarak, kurulum ekranı kullanıcılara bir aramaya katılmadan önce kamera ve mikrofon ayarlarını yapılandırma seçeneği sunar. Bir aramaya katılmak için kurulum ekranını atlayarak ayarladığınızda, kullanıcılar aramaya katılana kadar bu seçeneğe sahip olmaz.
Kullanıcılar aramaya katılmadan önce kamerayı ve mikrofonu açıp kapatmak için ve ile cameraOn
microphoneOn
boole değeri geçirebilirsiniz. Kullanıcının her biri için sırasıyla izin vermesi durumunda kamera ve mikrofonun varsayılan durumunu denetleme işlevi etkilenmez.
Varsayılan olarak, hem hem de cameraOn
microphoneOn
olarak false
ayarlanır. Kullanıcı Arabirimi Kitaplığı'nın varsayılan çağrı birleştirme deneyiminde bile bu işlevi kullanabilirsiniz. Bu durumda kamera ve mikrofon, ayarladığınız yapılandırmaya göre kurulum ekranında açılır veya kapatılır.
Kamera ve mikrofonun varsayılan durumunu ayarlamak için ve ile cameraOn
microphoneOn
CallCompositeLocalOptions
Boole değerini geçirin ve içine callComposite.launch
yerleştirin.
import com.azure.android.communication.ui.calling.models.CallCompositeLocalOptions
val localOptions: CallCompositeLocalOptions = CallCompositeLocalOptions()
.setMicrophoneOn(true)
.setCameraOn(true)
callComposite.launch(callLauncherActivity, remoteOptions, localOptions)
İzin işleme
Kullanıcıların mikrofon ve kamera için varsayılan yapılandırma API'leriyle kurulum ekranını atlama özelliğini kullanmaları için mikrofon ve kamera izni verilen bir aramaya katılmalarına izin vermenizi öneririz. Kullanıcının izinlerini işlemezseniz, KULLANıCı Arabirimi Kitaplığı bunları sizin için işlemeye çalışır.
Kullanıcıların bir aramaya katılmak için mikrofon iznini etkinleştirmesi gerekir. Kullanıcılar mikrofon iznini reddettikten sonra bir aramaya katılmayı denerse, KULLANıCı Arabirimi Kitaplığı çağrıyı bağlantı aşamasında bırakır ve koduyla CallCompositeErrorCode.MICROPHONE_PERMISSION_NOT_GRANTED
bir hata oluşturur.
Ancak kullanıcılar, kamera iznini reddetseler bile aramaya katılabilir. Kullanıcı Arabirimi Kitaplığı, kamera izni reddedildiğinde kamera işlevini devre dışı bırakır. Bu nedenle, kamera için varsayılan yapılandırma API'si arama deneyimini etkilemez. Kullanıcılar, kamera izni verdikten sonra kamera için varsayılan yapılandırma API'sinin etkisinin keyfini çıkarabilir.
Mikrofon iznini işlemenizi öneririz. Kullanıcılar aramaya kamera varsayılan olarak açık olarak katılırsa kamera iznini de işlemenizi öneririz.
Ağ hataları
Bir çağrı sırasında bir ağ kesintisi oluşursa veya arama düşerse, KULLANıCı Arabirimi Kitaplığı kapanır ve koduyla CallCompositeErrorCode.CALL_END_FAILED
bir hata oluşturur.
Kullanıcının ağ bağlantısı yoksa ve kurulum ekranını atladıktan sonra aramaya katılmayı denerse, kullanıcı arabirimi Kitaplığı arama bağlama aşamasında kapanır ve koduyla CallCompositeErrorCode.NETWORK_CONNECTION_NOT_AVAILABLE
bir hata oluşturur. Bu hatayı önlemek için, uygulamanızı kullanıcılar bir aramaya katılmadan önce ağ kullanılabilirliğini denetleyecek şekilde yapılandırmanızı öneririz.
Hata olaylarını almak için ile CallComposite
çağrısında bulunursetOnErrorHandler
.
Hata işleyicisine aşağıdaki error
değerler gönderilebilir:
microphonePermissionNotGranted
networkConnectionNotAvailable
Daha fazla bilgi için açık kaynak iOS KULLANıCı Arabirimi Kitaplığı'na ve örnek uygulama koduna bakın.
Kurulum ekranını atlama seçeneği
LocalOptions
, Kullanıcı Arabirimi Kitaplığı'nın Boole kullanarak kurulum ekranını atlama özelliğini ayarlayan bir seçenek sarmalayıcıdır. Varsayılan olarak, kurulum ekranını atlama özelliği olarak false
ayarlanır. Kurulum ekranını atlama deneyimini sağlamak için Boole true
değeriyle ayarlamanız skipSetupScreen
gerekir.
Uygulamanızı, kullanıcı bir aramaya katılmaya çalıştığında sorunsuz bir birleştirme deneyimi için mikrofon izni verilecek şekilde derlemenizi öneririz.
Özelliğini kullanmak için Boole değerini ile geçirin skipSetupScreen
LocalOptions
ve içine yerleştirin callComposite.launch
.
let localOptions = LocalOptions(skipSetupScreen: true)
callComposite.launch(remoteOptions: remoteOptions, localOptions: localOptions)
Kamera ve mikrofon yapılandırması için varsayılan seçenekler
Varsayılan olarak, kurulum ekranı kullanıcılara bir aramaya katılmadan önce kamera ve mikrofon ayarlarını yapılandırma seçeneği sunar. Bir aramaya katılmak için kurulum ekranını atlayarak ayarladığınızda, kullanıcılar aramaya katılana kadar bu seçeneğe sahip olmaz.
Kullanıcılar aramaya katılmadan önce kamerayı ve mikrofonu açıp kapatmak için ve ile cameraOn
microphoneOn
boole değeri geçirebilirsiniz. Kullanıcının her biri için sırasıyla izin vermesi durumunda kamera ve mikrofonun varsayılan durumunu denetleme işlevi etkilenmez.
Varsayılan olarak, hem hem de cameraOn
microphoneOn
olarak false
ayarlanır. Kullanıcı Arabirimi Kitaplığı'nın varsayılan çağrı birleştirme deneyiminde bile bu işlevi kullanabilirsiniz. Bu durumda kamera ve mikrofon, ayarladığınız yapılandırmaya göre kurulum ekranında açılır veya kapatılır.
Kamera ve mikrofonun varsayılan durumunu ayarlamak için ve ile cameraOn
microphoneOn
LocalOptions
Boole değerini geçirin ve içine callComposite.launch
yerleştirin.
let localOptions = LocalOptions(cameraOn: true, microphoneOn: true)
callComposite.launch(remoteOptions: remoteOptions, localOptions: localOptions)
İzin işleme
Kullanıcıların mikrofon ve kamera için varsayılan yapılandırma API'leriyle kurulum ekranını atlama özelliğini kullanmaları için mikrofon ve kamera izni verilen bir aramaya katılmalarına izin vermenizi öneririz. Kullanıcının izinlerini işlemezseniz, KULLANıCı Arabirimi Kitaplığı bunları sizin için işlemeye çalışır.
Kullanıcıların bir aramaya katılmak için mikrofon iznini etkinleştirmesi gerekir. Kullanıcılar mikrofon iznini reddettikten sonra bir aramaya katılmayı denerse, KULLANıCı Arabirimi Kitaplığı çağrıyı bağlantı aşamasına bırakır ve bir microphonePermissionNotGranted
hata oluşturur.
Ancak kullanıcılar, kamera iznini reddetseler bile aramaya katılabilir. Kullanıcı Arabirimi Kitaplığı, kamera izni reddedildiğinde kamera işlevini devre dışı bırakır. Bu nedenle, kamera için varsayılan yapılandırma API'si arama deneyimini etkilemez. Kullanıcılar, kamera izni verdikten sonra kamera için varsayılan yapılandırma API'sinin etkisinin keyfini çıkarabilir.
Mikrofon iznini işlemenizi öneririz. Kullanıcılar aramaya kamera varsayılan olarak açık olarak katılırsa kamera iznini de işlemenizi öneririz.
Ağ hataları
Arama sırasında bir ağ kesintisi oluşursa veya arama düşerse, KULLANıCı Arabirimi Kitaplığı kapanır ve bir callEndFailed
hata oluşturur.
Kullanıcının ağ bağlantısı yoksa ve kurulum ekranını atladıktan sonra aramaya katılmayı denerse, kullanıcı arabirimi Kitaplığı çağrı bağlanma aşamasında kapanır ve bir networkConnectionNotAvailable
hata oluşturur. Bu hatayı önlemek için, uygulamanızı kullanıcılar bir aramaya katılmadan önce ağ kullanılabilirliğini denetleyecek şekilde yapılandırmanızı öneririz.
Bileşik olaylar üzerinde işlem yapmak için kapanışları uygulayabilirsiniz. Aşağıdaki örnekte, başarısız bir bileşik için hata olayı gösterilmektedir:
callComposite?.events.onError = { error in
print("CallComposite failed with error:\(error)")
}
Hata işleyicisine aşağıdaki error
değerler gönderilebilir:
microphonePermissionNotGranted
networkConnectionNotAvailable