Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

conservative fork with some essential patches #1126

Open
wants to merge 99 commits into
base: edge
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
5b17266
Initial commit
daneren2005 Feb 22, 2014
563794b
Add project with abstract class + 2 concrete implementations
daneren2005 Feb 22, 2014
1fab7a8
Update documentation
daneren2005 Feb 22, 2014
c46649b
Remove useless log
daneren2005 Feb 22, 2014
093db23
Fix public address access
daneren2005 Feb 22, 2014
205d8b2
Set content type for mp3, accept ranges header
daneren2005 Feb 23, 2014
f4e26e4
Fix missing /r/n
daneren2005 Mar 9, 2014
22361c6
Make request accessible to underlining proxies
daneren2005 Mar 9, 2014
264e853
Start of web pass-through proxy
daneren2005 Mar 10, 2014
940c61d
Add ability to catch actions within the while loop
daneren2005 Apr 13, 2014
44a5fe3
missing project.properties file
nvllsvm Apr 23, 2014
c70cda9
Merge pull request #1 from nvllsvm/master
daneren2005 Apr 24, 2014
f2b31ba
Use gradle to build
Aug 24, 2014
a0bfee5
Merge pull request #3 from smoak/t_use_gradle
daneren2005 Aug 24, 2014
3149417
Fix headers being invalid
daneren2005 Jan 25, 2015
027c107
Fix random crash when no more tokens
daneren2005 Feb 16, 2015
0ce97aa
Add some better error handling
daneren2005 Feb 22, 2015
64a3df4
Replace request with HttpPOST like RESTMusicService uses
daneren2005 Feb 25, 2015
728135b
Edit more of the response headers
daneren2005 Feb 27, 2015
a0c6e29
Update to be able to pass a httpClient to WebProxy
daneren2005 Mar 4, 2015
6976d20
Fix error when ":" is not part of string
daneren2005 Mar 7, 2015
f5db118
Fix crashes when headers are invalid
daneren2005 Mar 14, 2015
6b17938
Add gradle build
daneren2005 Apr 26, 2015
6ad3048
Update gradle
daneren2005 May 16, 2015
9c5db5f
Fix, dlna ssl cast to yamaha receivers fails if a 'Content-Length hea…
mikeyoism Jan 10, 2016
1f0c027
Fix, dlna ssl cast to yamaha receivers fails if a 'Content-Length hea…
mikeyoism Jan 11, 2016
f94dd43
Fix update, dlna ssl cast to yamaha receivers fails if a 'Content-Len…
mikeyoism Jan 11, 2016
3a91e9c
Merge pull request #4 from mikeyoism/yamaha
daneren2005 Jan 12, 2016
264334c
Update gradle used
daneren2005 Mar 16, 2016
db43c18
Update to latest gradle
daneren2005 Apr 14, 2016
5272e39
Upgrade gradle to 2.1
daneren2005 Apr 28, 2016
5d7b4bf
Update gradle
daneren2005 Jun 24, 2016
7c35351
Update gradle
daneren2005 Aug 22, 2016
158e7e6
Update gradle
daneren2005 Sep 20, 2016
ec7d9ad
Use jcenter repo
nvllsvm Oct 1, 2016
8ac4775
Add ACCESS_WIFI_STATE permission
nvllsvm Oct 1, 2016
a74d706
Merge pull request #5 from nvllsvm/master
daneren2005 Oct 2, 2016
8e9308c
Convert away from apache.http and over to HttpUrlConnection
daneren2005 Oct 7, 2016
ed3ff58
Update gradle
daneren2005 Oct 12, 2016
a8a7562
Fix accepting self signed certificates
daneren2005 Oct 18, 2016
a4d9573
Update gradle
daneren2005 Oct 22, 2016
26d9e72
Update gradle
daneren2005 Jan 5, 2017
ceeea14
Update gradle + build tools
daneren2005 Mar 8, 2017
d57fe9e
Upgrade gradle
daneren2005 Apr 17, 2017
5b31819
Update gradle
daneren2005 Jun 13, 2017
8c610f6
Migrate to gradle 3.2.1
vrih Nov 18, 2018
08f66ee
Merge pull request #8 from vrih/feature/migrate-to-gradle-3.2.1
daneren2005 Nov 23, 2018
ddd03e9
Add license
daneren2005 Jun 8, 2020
bac3852
Follow material guidelines for side padding
vrih Oct 27, 2018
879ae56
Migrate to vector drawables
vrih Nov 24, 2018
3915354
Ensure now playing fragment bookmark icon themed correctly
vrih Dec 9, 2018
883d5d2
Fix rendering after deleting playlist items
vrih Nov 18, 2018
1de5177
upgrade build with android-studio AGP
paroj Jun 8, 2023
8da7ff7
port from android.support to androidx via android studio migrate
paroj Jun 8, 2023
4ecf202
Make connections secure by default
flyingOwl Jan 25, 2024
0c9f060
Use navidrome demo server
flyingOwl Jan 27, 2024
a31829f
Skip connection check during download if files are already local
flyingOwl Jan 27, 2024
0f90f79
Fix multiselection behavior in playlist view
flyingOwl Jan 24, 2024
7f31ae8
port instrumented tests to JUnit4 style rules
paroj Apr 2, 2024
ac22ada
bump minSdkVersion to fix jetty link errors
paroj Apr 2, 2024
8460279
move ServerProxy into subfolder
paroj Apr 5, 2024
14d4e30
remove ServerProxy submodule
paroj Apr 5, 2024
d066b00
Merge branch 'master' of ServerProxy into edge
paroj Apr 5, 2024
dfdbe4b
ServerProxy: sync SdkVersion targets
paroj Apr 5, 2024
d141eb2
fix ui: Recently added counter aligment; 'Per folder' checkbox text
norohind Apr 6, 2024
c36328c
Fix offline scrobbling for servers without lucene support
norohind Apr 6, 2024
f5f29a9
Make instrumental tests run again
norohind Apr 9, 2024
53eada4
Added random songs (#6)
popeen Apr 11, 2024
6d0ee37
add CI build
paroj Apr 11, 2024
d406b1f
Fix: DLNA functionality requires javax.servlet-api dep, regression of…
norohind Apr 14, 2024
0f6b44b
Fix playing icon color in song list
flyingOwl Apr 14, 2024
8162232
Remove alpha from element_color to fix slight color differences
flyingOwl Apr 14, 2024
8fa9ee5
Fix landscape layouts not used on some devices
flyingOwl Apr 14, 2024
71cc7aa
Fix color of delete icon
flyingOwl Apr 14, 2024
79584c4
Remove colored view element with 1px height from playlist
flyingOwl Apr 14, 2024
6d53e94
Make tapping on cover art to open playlist configurable
flyingOwl Jan 25, 2024
0cf009f
fix DownloadServiceTest.createMusicSongs helper method: use getMusicD…
norohind Apr 13, 2024
4bf685d
test DownloadServiceTest.DownloadServiceTest: increase wait time for …
norohind Apr 13, 2024
6b8bb7a
Add option to show a single rating button
flyingOwl Jan 25, 2024
8189cbf
drawable: Remove rating icon png files
flyingOwl Apr 14, 2024
c8c4729
Match fill colors for hover bar icons and use tints
flyingOwl Apr 14, 2024
49d38f4
Simplify and fix color of star icon
flyingOwl Apr 14, 2024
99e0b8f
enable persistentNotification by default
paroj Apr 14, 2024
f9692f0
CI: sign apk with present in repo debug key
norohind Apr 16, 2024
dbc5014
with persistent notifications, we can exit without confirmation
paroj May 3, 2024
05c1a97
Use jupnp lib instead of cling
norohind May 7, 2024
e30c60a
Add JUPNPTest regression test
norohind May 7, 2024
0051635
change app id from github.daneren2005.dsub to github.paroj.dsub2000 (…
norohind May 18, 2024
4a81f9e
update default settings for a cleaner look
paroj May 27, 2024
4c9d695
disable auth headers by default for improved compatibility
paroj Jun 2, 2024
9d2026e
bump version and update changelog
paroj Jun 2, 2024
273eeff
update README based on F-Droid page
paroj Jun 2, 2024
b147c77
allow manually running CI
paroj Sep 28, 2024
26afe4f
add minimal fastlane metadata
paroj Oct 8, 2024
1852172
fix generated APK filename
paroj Oct 9, 2024
2f56e00
Disables dependency metadata
paroj Oct 10, 2024
96fcd92
move graphics to fastlane location
paroj Oct 18, 2024
079cf58
README: add badges
paroj Oct 18, 2024
79f904b
add screenshots
paroj Oct 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
29 changes: 29 additions & 0 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: CI Build
on:
push:
branches: [edge]
tags: ["*"]
pull_request:
branches: [edge]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-20.04
steps:
- uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- uses: actions/checkout@v4
- name: Build
run: sh gradlew --no-daemon assembleRelease

- name: Sign the apk with debug key
run: /usr/local/lib/android/sdk/build-tools/34.0.0/apksigner sign --ks debug.keystore --ks-pass pass:android --ks-key-alias androiddebugkey app/build/outputs/apk/floss/release/*-release.apk

- uses: actions/upload-artifact@v4
with:
name: DSub2000 APK
path: app/build/outputs/apk/floss/release/*-release.apk
compression-level: 0
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

52 changes: 31 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,38 @@
## Basic Instructions
Grab dependent libraries
```
git submodule init
git submodule update
```
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/O5O514FGIG)

Go to ServerProxy and build project files
```
android update project --path ./
```
# DSub2000

Connect to your Subsonic server and listen to your music wherever you go. Songs
are cached for playback to save on your mobile bandwidth and to make them
available when you have no connection at all.

Subsonic is a cross-platform FOSS media server that's capable of indexing very
large media collections. The server can transcode if necessary so that the app
can play files that your device may not normally support.

[<img src="https://f-droid.org/badge/get-it-on.png"
alt="Get it on F-Droid"
height="80">](https://f-droid.org/packages/github.paroj.dsub2000)

## Screenshots

| Albums | Sidebar | Current Song |
| ------ | ------- | ------------ |
| ![](fastlane/metadata/android/en-US/images/phoneScreenshots/1.jpg) | ![](fastlane/metadata/android/en-US/images/phoneScreenshots/2.png) | ![](fastlane/metadata/android/en-US/images/phoneScreenshots/3.jpg) |

Add both projects and all .jar's in the libs folder
| Playlists | Now Playing | Details |
| --------- | ----------- | ------- |
| ![](fastlane/metadata/android/en-US/images/phoneScreenshots/4.jpg) | ![](fastlane/metadata/android/en-US/images/phoneScreenshots/5.png) | ![](fastlane/metadata/android/en-US/images/phoneScreenshots/6.png) |
| You can make playlists available offline by selecting "cached" here. | This shows the play queue. You drag and drop songs to rearrange. Note that you can press the "cached" icon for a context menu. | You can check whether the file was transcoded here. |

## SDK Project Dependencies
Under sdk -> extras:<br>
android -> support -> v7 -> appcompat<br>
android -> support -> v7 -> mediarouter<br>
google -> google_play_services -> libproject -> google-play-services_lib
## Features

## SDK Library Dependencies
android -> support -> v4 -> android-support-v4.jar<br>
android -> support -> v7 -> appcompat -> libs android-support-v7-appcompat.jar<br>
android -> support -> v7 -> mediarouter -> libs -> android-support-v7-mediarouter.jar<br>
google -> google_play_services -> libproject -> google-play-services_lib -> lib -> google-play-services.jar
* Drag and drop songs to rearrange your playlist on the Now Playing tab
* Pause playback when other apps request audio focus (navigation, etc)
* Lockscreen controls
* Gapless Playback
* Highly customizable UI
* User defined Cache Size, Network Timeout, and Buffer Length

## Updating Icons
Media Icons are double standard size. On https://romannurik.github.io/AndroidAssetStudio/icons-actionbar.html you can manually change this via the following js commands:
Expand Down
1 change: 0 additions & 1 deletion ServerProxy
Submodule ServerProxy deleted from 08f66e
5 changes: 5 additions & 0 deletions ServerProxy/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
gen/
.idea/
build/
.gradle
*.iml
6 changes: 6 additions & 0 deletions ServerProxy/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="github.paroj.serverproxy">

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
</manifest>
Loading