v1.0.0
flutter_incall
适用于 iOS/Android 的 Flutter InCall Manager 插件。
25喜欢 31近 30 天下载25Pub 分数
平台暂无数据
flutter-incall-manager
以下为英文项目原文快照,最新内容请访问 GitHub。
add to pubspec:
flutter_incall: ^1.0.0
import
import 'package:flutter_incall/flutter_incall.dart';
Methods
| Method | android | ios | description |
|---|---|---|---|
start({media: ?string, auto: ?boolean, ringback: ?string}) |
:smile: | :smile: | start incall manager. ringback accept non-empty string or it won't play default: {media:'audio', auto: true, ringback: ''} |
stop({busytone: ?string}) |
:smile: | :smile: | stop incall manager busytone accept non-empty string or it won't play default: {busytone: ''} |
| turnScreenOn() | :smile: | :rage: | force turn screen on |
| turnScreenOff() | :smile: | :rage: | force turn screen off |
setKeepScreenOn(enable: ?boolean) |
:smile: | :smile: | set KeepScreenOn flag = true or false default: false |
setSpeakerphoneOn(enable: ?boolean) |
:smile: | :rage: | toggle speaker ON/OFF once. but not force default: false |
setForceSpeakerphoneOn(flag: ?boolean) |
:smile: | :smile: | true -> force speaker on false -> force speaker off null -> use default behavior according to media type default: null |
setMicrophoneMute(enable: ?boolean) |
:smile: | :rage: | mute/unmute micophone default: false p.s. if you use webrtc, you can just use track.enabled = false to mute |
| async checkRecordPermission() | :smile: | :smile: | check record permission without promt. return Promise. see about permission section above |
| async requestRecordPermission() | :smile: | :smile: | request record permission to user. return Promise. see about permission section above |
startRingtone(ringtone: string, ?vibrate_pattern: array, ?ios_category: string, ?seconds: number) |
:smile: | :smile: | play ringtone. ringtone: 'DEFAULT' or 'BUNDLE'vibrate_pattern: same as RN, but does not support repeatios_category: ios only, if you want to use specific audio categoryseconds: android only, specify how long do you want to play rather than play once nor repeat. in sec. |
| stopRingtone() | :smile: | :smile: | stop play ringtone if previous started via startRingtone() |
| stopRingback() | :smile: | :smile: | stop play ringback if previous started via start() |
setFlashOn(enable: ?boolean, brightness: ?number) |
:rage: | :smile: | set flash light on/off |
| async getIsWiredHeadsetPluggedIn() | :rage: | :smile: | return wired headset plugged in state |
Events
| Event | android | ios | description |
|---|---|---|---|
| 'Proximity' | :smile: | :smile: | proximity sensor detected changes. data: {'isNear': boolean} |
| 'WiredHeadset' | :smile: | :smile: | fire when wired headset plug/unplug data: {'isPlugged': boolean, 'hasMic': boolean, 'deviceName': string } |
| 'NoisyAudio' | :smile: | :rage: | see andriod doc. data: null |
| 'MediaButton' | :smile: | :rage: | when external device controler pressed button. see android doc data: {'eventText': string, 'eventCode': number } |
| 'onAudioFocusChange' | :smile: | :rage: | see andriod doc data: {'eventText': string, 'eventCode': number } |
依赖清单 1 项
{"sdk":"flutter"}先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗