Giter VIP home page Giter VIP logo

horizontal-org / tella-ios Goto Github PK

View Code? Open in Web Editor NEW
19.0 8.0 8.0 4.85 MB

The iOS version of our app Tella. Tella is a mobile app designed to protect human rights defenders, advocates, and journalists by encrypting and hiding their sensitive data and safely uploading it to their organization's server.

Home Page: https://tella-app.org/

Swift 99.92% Ruby 0.04% Objective-C 0.04% Shell 0.01%
hacktoberfest human-rights-defenders tella-deployments journalists sensitive-data censorship android

tella-ios's People

Contributors

ahlem-jarrar avatar buildbricks avatar carohadad avatar dhekra-rouatbi avatar jeksys avatar laevandus avatar omlitt avatar pastre avatar rance-attack avatar raphmim avatar rob-horizontal-ios avatar robertshrestha avatar tomislavr avatar valbuenag avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tella-ios's Issues

Audio continues when you go back while watching a video

Expected behavior

When you go back, the video should be paused and the audio stopped

Actual behavior

For a second, the audio continues after go back to the list of videos

Steps to reproduce the problem

  1. Homescreen
  2. Tap Video icon.
  3. Select a video from the list
  4. Tap play.
  5. Tap back.

Additional information

Looks like there are some session that gets recorded because after you go again to the same video, the video is still playing automatically, which can cause issues of privacy because the unintended play that is happening.

Changing Password

If the user cancels or encounters an error during the new key creation within the "change lock" menu, the user needs to delete and redownload the app. This is a serious bug.

The reason for the bug is that the old secret key needs to be deleted before the new secret key is created if it is to retain the same tag in the secure enclave (to allow for consistent retrieval). A workaround would be to have an appended number to the tag that increases when the key is regenerated. This appended number can be kept track of dynamically in a separate file. Then the old key can be deleted after the new key is generated, and not be deleted in case of error. Additionally, a message will need to be displayed to the user in case of error.

Bug in pausing audio

When the audio is played, then paused and then played again, it plays from the beginning rather than resuming from where it was paused.

Processing spinners

There are a few times when the app appears to freeze for several seconds. It would be nice to have a spinner to indicate to the user that it's not frozen, just thinking. This is most noticeable on my device when opening the camera for the first time in the app. Decrypting/exporting large files would likely have the same effect.

Video continues to play when you go to background

Expected behavior

Video stops when you go to background and doesn't play anything when you are opening the app again.

Actual behavior

Video still plays and after you come back from background, you can hear the audio while tapping your PIN.

Steps to reproduce the problem

  1. Homescreen
  2. Tap Video icon.
  3. Select a video from the list
  4. Tap play.
  5. Change to another app
  6. Go back to the app

Additional information

It is related to this other bug #47, must be a session issue.

Unused CryptoSwift

We added cocoapods to the project early on, but ended up not using them. If none are projected to be used, the cocoapods files should be removed.

Revamp user interface

The app's visual identity and overall structure should be in line with the Android version of Tella

Redirect after 'shutdown' button pressed

After the shutdown button is pressed, the files and RSA keys are deleted, but there is no visual feedback for the user. Instead, the user should be redirected to the authentication screen where they create a new password.

Add audio recorder

Users should be able to record audio directly from Tella, and for the audio recordings to be automatically saved into the Gallery.

Export data with file type

Data currently is exported without a file type (just as raw data). This means it needs to be assigned a type after being exported, which isn't the ideal user experience. Will likely need to feed something different to the ActivityViewController.

Secure in app video previewing

We were previously using the QuickLook framework to show videos in the gallery page, however after the implementation of encryption this framework no longer worked because it requires a url for files and decrypting returns raw data.

We have not been able to find a framework that supports video previewing from a data object. Another possible solution could be storing data in a temporary file which is deleted after previewing. However, this creates a new problem of how to securely store unencrypted files even temporarily. Ideally, unencrypted data should never be stored on disk.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.