📱 Wire for iOS (iPhone and iPad)

Overview

Wire™

Wire logo

Build Status

This repository is part of the source code of Wire. You can find more information at wire.com or by contacting [email protected].

You can find the published source code at github.com/wireapp/wire.

For licensing information, see the attached LICENSE file and the list of third-party licenses at wire.com/legal/licenses/.

If you compile the open source software that we make available from time to time to develop your own mobile, desktop or web application, and cause that application to connect to our servers for any purposes, we refer to that resulting application as an “Open Source App”. All Open Source Apps are subject to, and may only be used and/or commercialized in accordance with, the Terms of Use applicable to the Wire Application, which can be found at https://wire.com/legal/#terms. Additionally, if you choose to build an Open Source App, certain restrictions apply, as follows:

a. You agree not to change the way the Open Source App connects and interacts with our servers; b. You agree not to weaken any of the security features of the Open Source App; c. You agree not to use our servers to store data for purposes other than the intended and original functionality of the Open Source App; d. You acknowledge that you are solely responsible for any and all updates to your Open Source App.

For clarity, if you compile the open source software that we make available from time to time to develop your own mobile, desktop or web application, and do not cause that application to connect to our servers for any purposes, then that application will not be deemed an Open Source App and the foregoing will not apply to that application.

No license is granted to the Wire trademark and its associated logos, all of which will continue to be owned exclusively by Wire Swiss GmbH. Any use of the Wire trademark and/or its associated logos is expressly prohibited without the express prior written consent of Wire Swiss GmbH.

Wire iOS

The Wire mobile app has an architectural layer that we call sync engine. It is the client-side layer that processes all the data that is displayed in the mobile app. It handles network communication and authentication with the backend, push notifications, local caching of data, client-side business logic, signaling with the audio-video libraries, encryption and decryption (using encryption libraries from a lower level) and other bits and pieces.

The user interface layer of the mobile app is built on top of the sync engine, which provides the data to display to the UI. The sync engine itself is built on top of a few third-party frameworks, and uses Wire components that are shared between platforms for cryptography (Proteus/Cryptobox) and audio-video signaling (AVS).

Mobile app architecture

Documentation

Additional documentation is available in the Wire iOS wiki.

How to build the open source client

What is included in the open source client

The project in this repository contains the Wire iOS client project. You can build the project yourself. However, there are some differences with the binary Wire iOS client available on the App Store. These differences are:

  • the open source project does not include the API keys of Vimeo, Localytics, HockeyApp and other 3rd party services.
  • the open source project links against the open source Wire audio-video-signaling (AVS) library. The binary App Store client links against an AVS version that contains proprietary improvements for the call quality.

Prerequisites

In order to build Wire for iOS locally, it is necessary to install the following tools on the local machine:

The setup script will automatically check for you that you satisfy these requirements

How to build locally

  1. Check out the wire-ios repository.
  2. From the checkout folder, run ./setup.sh. This will pull in all the necessary dependencies with Carthage and verify that you have the right version of the tools installed.
  3. Open the project Wire-iOS.xcodeproj in Xcode
  4. Click the "Run" button in Xcode

These steps allow you to build only the Wire umbrella project, pulling in all other Wire frameworks with Carthage. If you want to modify the source/debug other Wire frameworks, you can open the Carthage/Checkouts subfolder and open the individual projects for each dependency there.

You can then use carthage build --platform iOS to rebuild the dependency and use it in the umbrella project.

Known limitations

Notifications send through Apple Push Notification service can only be received by the App Store Wire client, which is code signed with Wire's own certificate. This is a security feature enforced by Apple, as documented in Apple's Local and Remote Notification Programming Guide. Any client build from source will not be able to receive notifications.

Translations

All Wire translations are crowdsourced via CrowdIn: https://crowdin.com/projects/wire

Issues
  • Backup of conversations

    Backup of conversations

    Please add a backup functionality so users could bring over their old conversations to a replacement phone.

    Feature request no-issue-activity 
    opened by ghost 49
  • Wire System Sharing for multiple images

    Wire System Sharing for multiple images

    iOS allows you to select multiple images or videos to share simultanously. However, Wire doesn't respond well to this. Sharing one image works fine. When you share multiple, no visual feedback appears after a long pause and you return to the media selection screen. Meanwhile, when you open Wire it first looks like nothing is happening. After a short while (30 seconds or so) all of a sudden the images appear. However, it seems that Wire accepts a maximum of 5 images at the same time, but doesn't give any feedback when you send more, but just picks 5. It should give a popup stating that max 5 images can be shared at a time.

    And the worst part: these five images do not get sent. The get a status of 'Sending' but they never are. And the state is hidden by default so you have to tap the images to find out they aren't sent. When you send new messages or images afterwards, these are delivered but the older images remain unsent.

    You can get these stalled images to send by shutting down Wire and restarting it, that will trigger a new attempt apparently.

    Bug no-issue-activity 
    opened by EgbertW 22
  • The small counter on the wire icon indicating the amount of received messages is not being reset properly

    The small counter on the wire icon indicating the amount of received messages is not being reset properly

    • Have an unread message
    • The wire icon on the homescreen shows a litte "1" indicating that I received a message
    • Go into the app
    • Read the message
    • Leave the app again
    • Problem: The counter still shows a "1" while it shouldn't actually display anything.

    A lot of times, I have to actually enter the app twice in order to reset the notification count, it usually doesn't work the first time.

    Bug no-issue-activity 
    opened by rbieb 21
  • [Refactoring]: Merged Develop Into the Feature Branch

    [Refactoring]: Merged Develop Into the Feature Branch

    What's new in this PR?

    EVERYBODY THAT MERGED SOMETHING ON DEVELOP DURING THE LAST PERIOD PLEASE HAVE A LOOK

    The scope of this PR is align the feature branch with the last changes of develop.

    EVERYBODY THAT MERGED SOMETHING ON DEVELOP DURING THE LAST PERIOD PLEASE HAVE A LOOK

    opened by marcomaddy1982 20
  • Feature: Landscape mode

    Feature: Landscape mode

    I already requested this through the contact form a while ago but I think it would be better off here, making it easier to track progress on this issue if there is any.

    I really hate typing on portrait mode, the buttons are just too small for my fingers. Unfortunately Wire doesn't support landscape mode on iOS. I would really love support for this to be added.

    Feature request no-issue-activity 
    opened by EgbertW 18
  • Build fails on latest Xcode

    Build fails on latest Xcode

    Dear Devs, I'm just guessing the source of the problem here, but I'm willing to work with you to figure this out. What I think is that after Carthage fails to use binary the compilation fails because it's still using $PODS_ROOT variable instead of the replacement $SRCROOT. Obviously, when I run 'pod install' as asked, it runs fine but error stays the same. Here are the errors and the log.

    Carthage bootstrap doesn't install most binaries due to "version mismatch" (which Carthage should allow for backwards compatibility, but that's another issue/bug):

    *** Skipped installing Cartography.framework binary due to the error:
    	"Incompatible Swift version - framework was built with 3.0.2 and the local version is 3.1."
    
    
    *** Building scheme "VIMNetworkingFramework" in VIMNetworking.xcworkspace
    Build Failed
    	Task failed with exit code 65:
    	/usr/bin/xcrun xcodebuild -workspace /Users/baseline/Desktop/2017/github/wire-ios/Carthage/Checkouts/VIMNetworking/VIMNetworking.xcworkspace -scheme VIMNetworkingFramework -configuration Release -derivedDataPath /Users/baseline/Library/Caches/org.carthage.CarthageKit/DerivedData/VIMNetworking/v6.0.2-wire-swift3.0.2 -sdk iphoneos ONLY_ACTIVE_ARCH=NO BITCODE_GENERATION_MODE=bitcode CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES clean build
    
    This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/wy/hy23j0d94s95gdwy2s1gdw380000gn/T/carthage-xcodebuild.GNM6gT.log
    

    and here's the tail of that log file:

    PhaseScriptExecution [CP]\ Check\ Pods\ Manifest.lock /Users/baseline/Library/Caches/org.carthage.CarthageKit/DerivedData/VIMNetworking/v6.0.2-wire-swift3.0.2/Build/Intermediates/VIMNetworkingFramework.build/Release-iphoneos/VIMNetworkingFramework.build/Script-BBCA0BBBE8FFE626CD6221D5.sh
        cd /Users/baseline/Desktop/2017/github/wire-ios/Carthage/Checkouts/VIMNetworking/VIMNetworkingFramework
        /bin/sh -c /Users/baseline/Library/Caches/org.carthage.CarthageKit/DerivedData/VIMNetworking/v6.0.2-wire-swift3.0.2/Build/Intermediates/VIMNetworkingFramework.build/Release-iphoneos/VIMNetworkingFramework.build/Script-BBCA0BBBE8FFE626CD6221D5.sh
    diff: /../Podfile.lock: No such file or directory
    diff: /Manifest.lock: No such file or directory
    error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
    
    ** BUILD FAILED **
    
    
    The following build commands failed:
    	PhaseScriptExecution [CP]\ Check\ Pods\ Manifest.lock /Users/baseline/Library/Caches/org.carthage.CarthageKit/DerivedData/VIMNetworking/v6.0.2-wire-swift3.0.2/Build/Intermediates/VIMNetworkingFramework.build/Release-iphoneos/VIMNetworkingFramework.build/Script-BBCA0BBBE8FFE626CD6221D5.sh
    (1 failure)
    
    

    Thank you!

    opened by anuhanovic 17
  • The app is booting up very slow.

    The app is booting up very slow.

    Short description

    When I open the wire app it takes 5 to 15 seconds that it shows my list of chats.

    Behaviour:

    The opening of the app is between 5 and 15 seconds on a iphone 5s with iOS 10. But some people I know have newer iPhones (6 or newer) and the boot up is between 5 and 10 seconds. Thats not very fast.

    Expected behaviour

    I suspect from a chat app it wil load under 5 seconds on devices like the iPhone 5s and much faster on newer ones. And when I already have booted the app in the background the app should open nearly instantly.

    I've the latest iOS version of the Wire app and the latest version of iOS 10.

    Bug no-issue-activity 
    opened by mat1th 16
  • Most recent version of Wire crashes upon start

    Most recent version of Wire crashes upon start

    Checklist (please check before submitting)

    • [ x ] I checked the existing issues, and the issue was not reported before.

    The problem

    Briefly describe the issue you are experiencing (or the feature you want to see added to Wire). Tell us what you were trying to do and what happened instead.

    Environment

    • Wire version that exhibits the issue: 3.49
    • Last Wire version that did not exhibit the issue (if applicable): 3.48
    • iOS version used to run Wire: 13.3
    • iOS device type: iPhone SE
    • Mobile network type (EDGE/LTE/Wi-Fi/Offline): any
    • Exact date, time and timezone (only for the crash issues): at the moment of submitting this post and 15 minutes before (7JAN 06:50 GMT+2 ...)

    Details

    After updating to the newest version, wire was loading for 5-10 seconds (logo) and then crashed. Now it consistently crashes immediately upon opening. I have three different accounts logged in, all without a phone number.

    opened by 0ki 16
  • No warning for a verified contact when adding a new device

    No warning for a verified contact when adding a new device

    Checklist (please check before submitting)

    [ X] - I checked the existing issues, and the issue was not reported before.

    The problem

    No warning for a verified contact when adding a new device

    Environment

    • Wire version that exhibits the issue: 3.2
    • Last Wire version that did not exhibit the issue (if applicable): N/A
    • iOS version used to run Wire: 11.1.1
    • iOS device type: iPhone SE
    • Mobile network type (EDGE/LTE/Wi-Fi/Offline): Wifi
    • Exact date, time and timezone (only for the crash issues): N/A

    Details

    • A is having a mobile 1
    • B is having a mobile (iOS) and a desktop
    • A is adding a new mobile to their account and send a message to B.
    • A is sending a new message to B (see 1 below) pic1a
    • B is answering with their Wire mobile.

    There is no warning of losing the verified status (missed then the point of verifying contact). Similar to #440 and give even more credit to https://github.com/wireapp/wire-webapp/issues/208

    • B continues the conversation on Wire desktop and the warning is displayed there: pic1

    Calling Debug logs (only for calling issues)

    N/A

    Screenshots

    Cf. upper

    opened by IpsmLorem 15
  • [Refactoring]: DeepLinks

    [Refactoring]: DeepLinks

    What's new in this PR?

    In this PR can find:

    Application Launching Refactoring Issue Fix:

    When the app was in background and then for some reasons were going in foreground the AppStateCalculator was forcing to load the appState. This is wrong cause if we have no variation in the appState this is not necessary and we don't have to force it. In fact in the scenario we were opening a deep link and the user was authenticated we were forcing the app to the same state it already was (.authenticated) and all the transition were performed and the ZMClientController were returning to its initial state and show the conversation list. Removing the force parameter the transition are not execute when not necessary.

    DeepLink Sync-Engine communication Refactoring:

    Regarding this topic see the PR https://github.com/wireapp/wire-ios-sync-engine/pull/1327

    Dependenties

    sync-engine: https://github.com/wireapp/wire-ios-sync-engine/pull/1327

    opened by marcomaddy1982 15
  • [Chore] Update localization

    [Chore] Update localization

    This PR pulls in the latest localization translations from Crowdin.

    opened by github-actions[bot] 1
  • fix: Add back button to connection request inbox FS-83

    fix: Add back button to connection request inbox FS-83

    BugFS-83 [iOS] Connection request inbox don't have a back button


    PR Submission Checklist for internal contributors

    • The PR Title

      • [x] conforms to the style of semantic commits messages¹ supported in Wire's Github Workflow²
      • [x] contains a reference JIRA issue number like SQPIT-764
      • [x] answers the question: If merged, this PR will: ... ³
    • The PR Description

      • [x] is free of optional paragraphs and you have filled the relevant parts to the best of your ability

    What's new in this PR?

    Issues

    Connection request inbox doesn't have back button which makes it very counterintuitive to go back to the main screen.

    Solutions

    Put the view controller in navigation controller with back button.

    Testing

    Receive an incoming connection request and tap on it to confirm that the back button is present.


    PR Post Submission Checklist for internal contributors (Optional)

    • [ ] Wire's Github Workflow has automatically linked the PR to a JIRA issue

    PR Post Merge Checklist for internal contributors

    • [ ] If any soft of configuration variable was introduced by this PR, it has been added to the relevant documents and the CI jobs have been updated.

    References
    1. https://sparkbox.com/foundry/semantic_commit_messages
    2. https://github.com/wireapp/.github#usage
    3. E.g. feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.
    opened by typfel 2
  • fix: remove cartography part 9 SQPIT-772

    fix: remove cartography part 9 SQPIT-772

    TaskSQPIT-772 Remove Cartography

    remove cartography from:

    • IconActionCell (tested covered in ConversationOptionsViewControllerTests)
    • UserConnectionView (tested in UserConnectionViewTests)
    • LocationPreviewController (tested in LocationPreviewControllerTests)
    • CameraKeyboardPermissionsCell (tested in CameraKeyboardViewControllerTests)
    • InputBar (ConversationInputBarViewControllerAudioRecorderSnapshotTests)
    • AudioMessageView (AudioMessageViewTests)
    • EmojiKeyboardViewController (covered in CanvasViewControllerTests)
    • UserConnectionView (UserConnectionViewTests)
    • LocationSendViewController (tested in LocationSendViewControllerTests)
    • CanvasViewController (tested in CanvasViewControllerTests)
    • CallQualityViewController (CallQualityControllerTests)
    • LocationPreviewController (LocationPreviewControllerTests)
    • DotView (tested in AccountViewSnapshotTests)
    • SearchHeaderViewController (tested in AddParticipantsViewControllerSnapshotTests)
    • LocationSelectionViewController
    • AccentColorPickerController

    Share extension:

    • NotSignedInViewController
    • SendingProgressViewController
    opened by billypchan 0
  • Sharing does not work on ios devices (Iphones)

    Sharing does not work on ios devices (Iphones)

    Hi there! Some of my colleagues are using Wire on IOS devices / Iphones and facing problems with sharing content. Trying to share content (photos, voicemails) from "Photos" or other places does not work anymore. The problem seems to be relatively new.

    Steps to reproduce:

    Opening "Photos" on an Iphone
    Select photos and share with application wire
    Short Lightbox with "Processing" but Wire does not open
    

    In-App sharing does still work. But this is annoying because sometimes it is required to send multiple pictures or content.

    I have tried it many times also with a different amount of pictures selected.

    Wire is uptodate on the devices.

    Bug 
    opened by DrAxelbauer 0
  • [Chore] Add action for deleting conversation

    [Chore] Add action for deleting conversation

    What's new in this PR?

    Refactor the conversation deletion logic into EntityAction and EntityActionHandler pattern

    Dependencies

    • https://github.com/wireapp/wire-ios-data-model/pull/1270
    • https://github.com/wireapp/wire-ios-request-strategy/pull/412
    • https://github.com/wireapp/wire-ios-sync-engine/pull/1568
    opened by sb88k 0
  • [Chore] Apply changes in updating role logic

    [Chore] Apply changes in updating role logic

    What's new in this PR?

    Apply changes in updating role logic

    Dependencies

    • https://github.com/wireapp/wire-ios-data-model/pull/1255
    • https://github.com/wireapp/wire-ios-request-strategy/pull/402
    • https://github.com/wireapp/wire-ios-sync-engine/pull/1558
    opened by sb88k 0
  • Feature: Indicate when federated users are present in a conversation

    Feature: Indicate when federated users are present in a conversation

    What's new in this PR?

    Include another case in guest bar for indicating when federated users are present in a conversation.

    I've refactored how we build the strings displayed in guest bar from having a separate string for each case to programatically build the final string. The reason for this is that with 4 cases we would need 4! = 24 different strings to handle all cases.

    Dependencies

    Needs releases with:

    • [ ] https://github.com/wireapp/wire-ios-data-model/pull/1252
    opened by typfel 0
  • Crash after connecting if restored from backup of an older device

    Crash after connecting if restored from backup of an older device

    Checklist (please check before submitting)

    • [x ] I checked the existing issues, and the issue was not reported before.

    The problem

    The app quits unexpectedly, shortly after opening, if a backup from an older device is restored, and internet is active.

    Environment

    • Wire version that exhibits the issue: restoring to: 3.90, backup saved from: 3.20
    • Last Wire version that did not exhibit the issue (if applicable): n.a.
    • iOS version used to run Wire: restoring to: 15.0.2, backup saved from: 9.3.6
    • iOS device type: restoring to: iPhone SE 2020, backup saved from: iPhone 4s
    • Mobile network type (EDGE/LTE/Wi-Fi/Offline): WiFi
    • Exact date, time and timezone (only for the crash issues): 12 October, 00:58 CET

    Details

    I am trying to move my message history from an old iPhone to a new one.

    1. Save backup to Dropbox on old phone with a password.
    2. Install Wire on new phone, log in, but do not restore from backup.
    3. Confirm that Wire works as expected on the new phone; it's able to send and receive new messages.
    4. Log out, then log in again and choose to restore from the backup in Dropbox, and enter the password.

    Expected result: message history is restored and Wire continues to function.

    Actual result:

    1. A spinning white icon shows for a few seconds, then the app quits unexpectedly, with no error message.
    2. Upon reopening the app, a thin orange line appears briefly at the top, then it quits again, less than a second after opening it. There is no error message. It happens every time it's opened.
    3. Putting the phone in Airplane mode with no internet allows the app to open. The old messages from the backup are present and can be read.
    4. As soon as Airplane mode is turned off, and the app tries to connect, it crashes again.
    Bug 
    opened by ElhemEnohpi 1
  • Study: Use type erasure to make CallPermissionsConfiguration Equatable

    Study: Use type erasure to make CallPermissionsConfiguration Equatable

    What's new in this PR?

    Issues

    (This is a study of type erasure not necessary to merge) In CallInfoViewControllerInput, we wrote a isEqual method to compare 2 CallInfoViewControllerInput to act a s == method of Equatable. It works but:

    • it is long
    • easy to forgot update if new properties are added to the protocol
    • 2 different object conforms CallInfoViewControllerInput can be equal (This protocol is written for Mocking CallInfoConfiguration, so we need compare a mock and real object)

    Causes

    From the comment: // Workaround to make the protocol equatable, it might be possible to conform CallInfoConfiguration // to Equatable with Swift 4.1 and conditional conformances. Right now we would have to make // the CallInfoRootViewController generic to work around the Self requirement of // Equatable which we want to avoid.

    With Swift 5 it is still not possible to make CallInfoViewControllerInput conforms Equatable due to same compiler error.

    Solutions

    Use type erasure to solve it. ref: https://khawerkhaliq.com/blog/swift-protocols-equatable-part-two/

    1. Conform CallInfoConfiguration to Equatable
    2. It requires CallInfoConfiguration member permissions, mediaManager and callState also Equatable. So we need to make them not a protocol type and conforms Equatable
    3. Create AnyCallPermissionsConfiguration, AnyAVSMediaManagerInterface and AnyCallStateExtending as a wrapper of them
    4. Add isEqual method to above protocol, and add default implementation to the extensions (where Self: Equatable)

    Discuss

    • [ ] Is it worth to apply the change? These protocols are only conformed by 2 struct/class and one of them is Mock.
    DO NOT MERGE 
    opened by billypchan 0
  • iPhone app crashing at start

    iPhone app crashing at start

    Checklist (please check before submitting)

    • [ x ] I checked the existing issues, and the issue was not reported before.

    The problem

    After a recent update, the Wire app crashes frequently upon starting, apparently right before logging me in with Touch ID. On a second attempt, the app starts without problems.

    Environment

    • Wire version that exhibits the issue: 3.88 (4633)
    • Last Wire version that did not exhibit the issue (if applicable): one of the previous builds
    • iOS version used to run Wire: 15.0
    • iOS device type: iPhone 8
    • Mobile network type (EDGE/LTE/Wi-Fi/Offline): Wi-Fi / 4G
    • Exact date, time and timezone (only for the crash issues): 30 sep. 2021, 10:58 AM GMT
    Bug 
    opened by gapop 1
Releases(appstore/3.92)
  • appstore/3.92(Nov 11, 2021)

  • appstore/3.91(Oct 12, 2021)

  • appstore/3.90(Oct 6, 2021)

  • appstore/3.89(Oct 6, 2021)

  • appstore/3.88(Sep 28, 2021)

    New:

    • Support for large video conference calls
    • All participants in a conference call, no matter if they have video enabled or join with audio only, are visually represented on the calling screen by tiles
    • Large number of participants is organized in pages
    • Calls can be performed in landscape mode

    Improved:

    • Copy changes for file sharing
    • Copy changes for VBR/CBR setting

    Fixed:

    • Possibility to disable copy & paste images when file sharing is disabled
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.87(Aug 30, 2021)

    New:

    • New intuitive buttons for the call screen introduced
    • Support for file-sharing restrictions

    Fixed:

    • Syncing sometimes does not finish when app returns from background
    • Show a warning popup when a message can not be sent
    • Constant bitrate is indicated correctly in CBR calls

    Note: This version of Wire does not support iOS 10 and iOS 11. This and future updates will only be available for devices running iOS 12 or newer.

    Source code(tar.gz)
    Source code(zip)
  • appstore/3.86(Aug 16, 2021)

    Improved:

    Use hardened end-point for changing email

    Note: This will be the last version of Wire to support iOS 10 and iOS 11. Future updates will only be available for devices running iOS 12 or newer.

    Source code(tar.gz)
    Source code(zip)
  • appstore/3.85(Jul 5, 2021)

  • appstore/3.84(Jun 30, 2021)

  • appstore/3.83(Jun 14, 2021)

    Fixed:

    • Searching for a conversation with characters including punctuation
    • Warning notification appearing multiple times
    • Conversation banner color is wrong in some cases
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.82(May 31, 2021)

    New:

    • Legal hold support

    Fixed:

    • Opening a deep link to a custom backend when logged in to 2 accounts makes pop up show up two times
    • Connection to server can not be established in certain network configurations
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.81(May 10, 2021)

    New:

    • Constant bit rate (CBR) is used by default for conference calls

    Improved:

    • External users are easier to identify in lists and conversations

    Fixed:

    • App doesn’t navigate to the conversation from a push notification
    • Close button is not visible on the user profile after opening a deep link on iPad
    • Active speakers sometimes were shown for too long in active speaker view
    • Post call popup not showing up when call was dropped intentionally
    • Call may drop due to participants adding new devices
    • Crash upon receiving an invalid asset (GHSA-2x9x-vh27-h4rv)
    • Verified status of a conversation would sometimes be incorrect (GHSA-mc65–7w99-c6qv)
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.80(Apr 26, 2021)

    New:

    • No audio notifications are played when participants of a conference call are entering or leaving

    Improved:

    • Image quality of screen share
    • Help messages to pinch-to-zoom feature added

    Fixed:

    • Crash when disabling Allow guests and Services
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.79(Apr 12, 2021)

    New:

    • Zooming during video calls allows better usage of screen sharing

    Fixed:

    • App crashes when using Apple keychain for logging into 2nd or 3rd account
    • Email field should not be editable for SCIM users
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.78(Mar 30, 2021)

    New:

    • View during video conference calls can be switched between all or actively speaking participants
    • Join conference calls in muted state

    Fixed:

    • For large teams, unable to send messages in a group of 300 users x 5 devices
    • Syncing indicator is not always shown when the app returns from background
    • When adding a second account and tapping on log out the app will freeze in the conversation list
    • Conversation search field is transparent in share extension
    • Link preview not working for YouTube links
    • Selecting a conversation sometimes opens wrong conversation
    • Verified shield does not disappear when verified user adds new device
    • Handling of case where device runs out of disk space
    • App stuck on Wire shield page after restoring from backup
    • Messages unable to be sent in group chats in certain cases
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.77(Mar 1, 2021)

    Improved:

    • Search icon in conversation is removed when Encryption Messages At Rest (EAR) is enabled
    • Call overlay timeout is increased
    • Countly SDK updated

    Fixed:

    • Edit button is not enabled if there is only one device in the client devices list
    • Last state is preserved when the user minimizes and restores the application
    • Local Network Privacy alert is only shown once
    • Edited messages do not disappear from notification center
    • Conversation is not always opened when tapping on a notification
    • User is asked to unlock the app twice (app lock feature) after enabling the Encrypt Messages At Rest
    • App crashes on empty markdown quote
    • Call UI freezing sometimes
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.76(Feb 15, 2021)

    New:

    • App-lock team configuration
    • Share extension app lock can be unlocked with a custom passcode

    Improved:

    • Search for conversation in share extension is case insensitive
    • Faster event processing
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.75(Feb 5, 2021)

  • appstore/3.74(Feb 1, 2021)

    New:

    • Active speakers are indicated by a colored frame in video conference calls
    • Session reset directly from a decryption error

    Improved:

    • Password validation UI

    Fixed:

    • Crash when switching account
    • Unblocking a user not working from search result
    • Issue with importing backups created with older Wire versions
    • Issue with logging out certain users with old team accounts
    • Profile pictures not loading when running against a custom backend
    • Accepted 1:1 connection displayed as the self user
    • App lock not always shown in the share extension
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.73(Jan 18, 2021)

    New:

    • Active speaker indication in conference calls

    Improved:

    • App lock can be en-/disabled per account

    Fixed:

    • Crash when receiving an invalid message
    • Invalid 1:1 conversations with self user
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.72(Dec 15, 2020)

    Improved:

    • In video conference calls video tiles can be max-/minimized with double tap

    Fixed:

    • Randomization of user IDs for conference calls to avoid correlation of ephemeral metadata
    • UI issues on iPad
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.71(Nov 30, 2020)

    Improved:

    • In video calls with two participants, the video of the other user fills the screen

    Fixed:

    • Network quality indicator is not visible in the conversation list screen
    • In-call controls are enabled even before the call is started
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.70(Nov 17, 2020)

  • appstore/3.69(Nov 10, 2020)

  • appstore/3.68(Nov 5, 2020)

  • appstore/3.67(Oct 27, 2020)

  • appstore/3.66(Oct 8, 2020)

  • appstore/3.65(Oct 1, 2020)

    New:

    • Support device orientation in video calls
    • Show indicator when a call uses variable bit rate
    • Show indicator when a call is using conference call technology
    • Inform users when their app version is too old for a conference call

    Improved:

    • Sorting of participants in calls
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.64(Sep 18, 2020)

    Fixed

    • Crash during some video calls
    • Frozen video after turning it off and on in a call
    • Missing name and microphone icon during video calls
    Source code(tar.gz)
    Source code(zip)
  • appstore/3.63(Jul 31, 2020)

    New:

    • Show muted icon for call participants
    • Show user names in video calls
    • Haptic touch support for embedded media items

    Improved:

    • Increased maximum username length
    • Various improvements to video grid in video calls

    Fixed:

    • Keyboard does not open when editing phone or email
    • Status bar does not update when navigating between screens on iOS 13
    • Unable to remove the second device from the device list
    • Audio messages can’t be played
    • Crash when entering a number in the country selection screen
    • Updated WebRTC library for calling
    Source code(tar.gz)
    Source code(zip)
Owner
Wire Swiss GmbH
Wire open source secure messenger
Wire Swiss GmbH
String (and more) validation for iOS

Swift Validators ?? String validation for iOS. Contents Installation Walkthrough Usage Available validators License ReactiveSwift + SwiftValidators Wa

George Kaimakas 233 Oct 27, 2021
:octocat: iOS app to browse open-source-ios-apps

osia Super basic iOS app to browse open-source-ios-apps Getting Started git clone https://github.com/dkhamsing/osia.git open Swift/osia.xcodeproj CMD

null 61 Nov 14, 2021
Command line tool for exporting resources and generating code from your Figma files

Fugen Fugen is a command line tool for exporting resources and generating code from your Figma files. Currently, Fugen supports the following entities

Almaz Ibragimov 49 Oct 17, 2021
OpenAPI/Swagger 3.0 Parser and Swift code generator

SwagGen SwagGen is a library and command line tool for parsing and generating code for OpenAPI/Swagger 3.0 specs, completely written in Swift. Swagger

Yonas Kolb 454 Nov 14, 2021
🚀 Create, maintain, and interact with Xcode projects at scale

What's Tuist ?? Tuist is a command line tool that helps you generate, maintain and interact with Xcode projects. It's open source and written in Swift

Tuist 2.2k Nov 20, 2021
📝 Read, update and write your Xcode projects

XcodeProj XcodeProj is a library written in Swift for parsing and working with Xcode projects. It's heavily inspired by CocoaPods XcodeProj and xcode.

Tuist 1.5k Nov 22, 2021
Strong typed, autocompleted resources like images, fonts and segues in Swift projects

R.swift Get strong typed, autocompleted resources like images, fonts and segues in Swift projects Why use this? It makes your code that uses resources

Mathijs Kadijk 8.4k Nov 13, 2021
Key-Value Coding (KVC) for native Swift classes and structs

SwiftKVC SwiftKVC brings key-value coding to native Swift classes and structures. You can easily set and access properties just using a subscript: var

Brad Hilton 134 Oct 23, 2021
Source code of the official F8 app of 2017, powered by React Native and other Facebook open source projects.

F8 App 2017 This is the entire source code of the official F8 app of 2017, available on Google Play and the App Store. How We Build It We've created a

Facebook Samples 14k Nov 25, 2021
A better way to handle gestures on iOS

Tactile is a safer and more idiomatic way to respond to gestures and control events. It lets you catch bugs at compile time and write more expressive

Damien 711 Nov 16, 2021
CODING iOS 客户端源代码

Coding_iOS客户端项目介绍 编译环境:Xcode-Version 8.0 (8A218a) 让项目跑起来先 项目里用到了 CocoaPods 和 Carthage,如果没有安装的话,需要先自行安装。 Clone 代码后,初次执行前,需要双击运行根目录下的bootstrap脚本。这个过程涉及到

CODING 3.8k Nov 11, 2021
DuckDuckGo iOS Application

DuckDuckGo iOS We are excited to engage the community in development! We are hiring! DuckDuckGo is growing fast and we continue to expand our fully di

DuckDuckGo 1.2k Nov 23, 2021
Firefox for iOS

Firefox for iOS Download on the App Store. This branch (main) This branch works with Xcode 12.4, Swift 5.3 and supports iOS 12.4 and above. Please not

Mozilla Mobile 10.6k Nov 26, 2021
Legacy Ghostery Browser for iOS

DEPRECATED - Ghostery for iOS version 2.x This project is no longer active. Please see our current iOS browser project for Ghostery iOS v3+. Ghostery

Ghostery 15 Oct 28, 2021
Kickstarter for iOS. Bring new ideas to life, anywhere.

Welcome to Kickstarter’s open source iOS app! Come on in, take your shoes off, stay a while—explore how Kickstarter’s native squad has built and conti

Kickstarter 7.8k Nov 21, 2021
📱 Nextcloud iOS app

Nextcloud iOS app Check out https://nextcloud.com and follow us on twitter.com/nextclouders or twitter.com/NextcloudiOS How to contribute If you want

Nextcloud 1.1k Nov 26, 2021
📱😀 Video & audio calls through Nextcloud on iOS

Nextcloud Talk iOS app Video & audio calls and chat through Nextcloud on iOS Nextcloud Talk is a fully on-premises audio/video and chat communication

Nextcloud 92 Nov 26, 2021
Our new iOS portfolio app for WWDCScholars

WWDCScholars iOS App WWDCScholars is a community of Apple WWDC Scholarship winners. Every year bright minds from all around the world compete against

WWDCScholars 61 Sep 21, 2021
Simplenote for iOS

Simplenote for iOS A Simplenote client for iOS. Learn more about Simplenote at Simplenote.com. Build Instructions Download Xcode At the moment Simplen

Automattic 1.8k Nov 12, 2021