You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
Michael Kirk b8ec353d77 Use recommended approach for speakerphone mode
From: https://developer.apple.com/library/content/qa/qa1754/_index.html

Q:  Can you explain the difference between calling the AVAudioSession method overrideOutputAudioPort: with the value AVAudioSessionPortOverrideSpeaker and using the category option AVAudioSessionCategoryOptionDefaultToSpeaker with setCategory:withOptions:error:.

A: The difference is that setting the AVAudioSessionPortOverride by calling overrideOutputAudioPort: is more transient than using the category option AVAudioSessionCategoryOptionDefaultToSpeaker.

Important: The use of both AVAudioSessionPortOverrideSpeaker and AVAudioSessionCategoryOptionDefaultToSpeaker are only applicable to the AVAudioSessionCategoryPlayAndRecord category.
Calling overrideOutputAudioPort: and setting the AVAudioSessionPortOverride to AVAudioSessionPortOverrideSpeaker is a way of temporarily overriding the output to play to the speaker. Any route change or interruption will cause the audio to be routed back to its normal route, following the last-in wins rule. Think of using overrideOutputAudioPort: in terms of what you might use to implement a Speakerphone button where you want to be able to toggle between the speaker (AVAudioSessionPortOverrideSpeaker) and the normal output route (AVAudioSessionPortOverrideNone).

Note: This property is intended to allow 3rd party applications to mimic the behavior of a Speakerphone button and therefore may change the input route as well as output route. For example, setting the AVAudioSessionPortOverride to AVAudioSessionPortOverrideSpeaker while a headset is plugged in will cause the route to change to built-in mic / built-in speaker.

// FREEBIE
8 years ago
.github crash reporting instructions in issue template (#1235) 9 years ago
Carthage@da34ea90e3 Update WebRTC to M59 + signal patches 8 years ago
Libraries Update WebRTC to M59 + signal patches 8 years ago
Scripts Add script to bump build numbers. 8 years ago
SettingsBundle Remove SCWaveformView. 8 years ago
Signal Use recommended approach for speakerphone mode 8 years ago
Signal.xcodeproj Add “new contact” and “add to existing contact” buttons in 1:1 conversation settings view. 8 years ago
Signal.xcworkspace Modify TSStorageManager to use separate shared read and write connections. 8 years ago
fastlane update ci to use latest XCode / fastlane 8 years ago
protobuf WIP: WebRTC calling 8 years ago
.clang-format format objc. 9 years ago
.gitattributes Supporting diffing of localizablestrings. 10 years ago
.gitignore TextSecureKit Refactoring 10 years ago
.gitmodules Fix tests on CI 8 years ago
.travis.yml update ci to use latest XCode / fastlane 8 years ago
BUILDING.md Update WebRTC to M59 + signal patches 8 years ago
CONTRIBUTING.md Update CONTRIBUTING.md 10 years ago
Cartfile Move PureLayout back to cocoapods for now 8 years ago
Cartfile.resolved Move PureLayout back to cocoapods for now 8 years ago
Gemfile update ci to use latest XCode / fastlane 8 years ago
Gemfile.lock update fastlane ci 8 years ago
LICENSE Update license. 8 years ago
MAINTAINING.md Update WebRTC to M59 + signal patches 8 years ago
Makefile update ci to use latest XCode / fastlane 8 years ago
Podfile Disable singleton assert for tests 8 years ago
Podfile.lock [SSK] Use existing transaction in cleanup. 8 years ago
README.md reference "help wanted" label 8 years ago

README.md

Signal for iOS Build Status

Signal is a messaging app for simple private communication with friends.

Available on the AppStore

Translation

Help us translate Signal! The translation effort happens on Transifex

Contributing Code

Instructions on how to setup your development environment and build Signal-iOS can be found in BUILDING.md. Other useful instructions for development can be found in the Development Guide wiki page

We recommend going through our issues and picking out something with the help wanted label.

For larger changes and feature ideas, we ask that you propose it on the unofficial Community Forum for a high-level discussion with the wider community before implementation.

This repository is set up with BitHub, so you can make money for committing to Signal-iOS. The current BitHub price for an accepted pull request is:

Current BitHub Price

Contributing Ideas

Have something you want to say about Open Whisper Systems projects or want to be part of the conversation? Get involved in the community forum.

Cryptography Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

License

Copyright 2014-2017 Open Whisper Systems

Licensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html