Skip to content

bottiger/SoundWaves

 
 

Repository files navigation

SoundWaves

SoundWaves is a free, libre and open source app for fetching and listening to podcasts.

Download from Google Play SoundWaves on fdroid.org

Help out

If you feel like helping out we are more than happy to accept any kind of help. There are a lot of programming - and non programming - tasks which need to be done.

BETA Testing

You can opt in as a beta tester here: http://play.google.com/apps/testing/org.bottiger.podcast

Feedback, bug reports and feature requests

I, as many other developers, aim to produce the best possible application for my users :) However, this requires that I know what you want. If something (anything) is not working or a feature is missing, please create a bug report - it's a huge help.

Getting feedback from my users is the best way of knowing what I should prioritize next.

Translations

If you want to help translate SoundWaves into your language please head over to: https://www.transifex.com/projects/p/soundwaves/

Unfortunately a (free) account is required.

UI Mockups

If you have ideas for the look and feel, but not able to help programming, just send me a mock-up or two of how you would like the 'workflow' of the application to be, and I'll may be testing it out.

Privacy

SoundWaves takes privacy very seriously, and I try to do whatever I can to always behave in the user's best interest.

If you are getting SoundWaves from source or F-droid it will never share any data with anyone without your explicit consent. However, if you are getting SoundWaves from a proprietary app store, like the Play store, it will collect some anonymous information - like crash reports - in order for me to improve the quality.

Special thanks to.

Bugsnag for providing free crash analytics for open source applications.

Permissions

SoundWaves aims at not requesting any permissions it doesn't need. I am not quite there yet - but almost.

Basic internet access. SoundWaves also needs to know the state of the current network connection in order know if the device is using a cellular connection.

  • INTERNET
  • ACCESS_WIFI_STATE
  • ACCESS_NETWORK_STATE

A wakelock is required in order to keep the device alive while downloading new episodes in the background.

  • WAKE_LOCK

Write access to the external storage is required in order to store episodes.

  • WRITE_EXTERNAL_STORAGE

Knowledge of the phone state is required in order to pause an episode if there is an incoming phone call. Unfortunately this permission also grants the app permission to various other capabilities like reading the phone number. However, this is never done and should be verified by anyone who is worried about it. The Android API for getting the phone number is called "getLine1Number" and does not appear anywhere in the source code. Except for this readme file.

  • READ_PHONE_STATE

In order to start fetching new episodes in the background without starting the app first, we need to get notified when the device has booted up.

  • RECEIVE_BOOT_COMPLETED

In order to synchronize the database to the cloud we use Android's built-in sync framework.

  • READ_SYNC_STATS
  • READ_SYNC_SETTINGS
  • WRITE_SYNC_SETTINGS

[Play store only] On the Play store we can request access to Google Drive in order to provide free cross device synchronization.

  • GET_ACCOUNTS
  • USE_CREDENTIALS

Required in order to control the media player.

  • MEDIA_CONTENT_CONTROL

Legacy permission which will be removed in the near future.

  • VIBRATE
  • DOWNLOAD_WITHOUT_NOTIFICATION

In order to scan a QR code and authenticate to the web player

  • CAMERA

About

Free, Libre and Open Source podcatcher - for Android

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 78.5%
  • Java 20.7%
  • CSS 0.4%
  • Kotlin 0.2%
  • HTML 0.1%
  • C++ 0.1%