bandcamp

package
v1.4.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2024 License: OSL-3.0 Imports: 7 Imported by: 0

README

Bandcamp

Android client

2023-02-26

com.bandcamp.android

Bandcamp app as of the date above, does not monitor Bandcamp URLs:

<intent-filter>
   <action android:name="android.intent.action.VIEW"/>
   <category android:name="android.intent.category.DEFAULT"/>
   <category android:name="android.intent.category.BROWSABLE"/>
   <data android:scheme="x-bandcamp" android:host="open"/>
   <data android:scheme="x-bandcamp" android:host="messages"/>
   <data android:scheme="x-bandcamp" android:host="feed"/>
   <data android:scheme="x-bandcamp" android:host="linked_paypal_email"/>
   <data android:scheme="x-bandcamp" android:host="show_merch"/>
   <data android:scheme="x-bandcamp" android:host="show_tralbum"/>
   <data android:scheme="x-bandcamp" android:host="show_fan"/>
   <data android:scheme="x-bandcamp" android:host="login"/>
   <data android:scheme="x-bandcamp" android:host="signup"/>
</intent-filter>

so deep linking is not possible. The API used with Bandcamp Android requires IDs for everything. This is the case going back to 2016 at least.

Why does this exist?

2023-02-26

https://solarfields.bandcamp.com/track/sol-remix-remastered

Solar Fields hasn’t created any albums yet:

https://soundcloud.com/solarfields/albums

20 unavailable videos are hidden:

https://youtube.com/playlist?list=PLem8ejSphCJI6MybaQTuqIUIiWq75vCHg

Documentation

Index

Constants

View Source
const (
	JPEG = iota
	PNG
)

Variables

View Source
var Images = []Image{
	{ID: 0, Width: 1500, Height: 1500, Format: JPEG},
	{ID: 1, Width: 1500, Height: 1500, Format: PNG},
	{ID: 2, Width: 350, Height: 350, Format: JPEG},
	{ID: 3, Width: 100, Height: 100, Format: JPEG},
	{ID: 4, Width: 300, Height: 300, Format: JPEG},
	{ID: 5, Width: 700, Height: 700, Format: JPEG},
	{ID: 6, Width: 100, Height: 100, Format: JPEG},
	{ID: 7, Width: 150, Height: 150, Format: JPEG},
	{ID: 8, Width: 124, Height: 124, Format: JPEG},
	{ID: 9, Width: 210, Height: 210, Format: JPEG},
	{ID: 10, Width: 1200, Height: 1200, Format: JPEG},
	{ID: 11, Width: 172, Height: 172, Format: JPEG},
	{ID: 12, Width: 138, Height: 138, Format: JPEG},
	{ID: 13, Width: 380, Height: 380, Format: JPEG},
	{ID: 14, Width: 368, Height: 368, Format: JPEG},
	{ID: 15, Width: 135, Height: 135, Format: JPEG},
	{ID: 16, Width: 700, Height: 700, Format: JPEG},
	{ID: 20, Width: 1024, Height: 1024, Format: JPEG},
	{ID: 21, Width: 120, Height: 120, Format: JPEG},
	{ID: 22, Width: 25, Height: 25, Format: JPEG},
	{ID: 23, Width: 300, Height: 300, Format: JPEG},
	{ID: 24, Width: 300, Height: 300, Format: JPEG},
	{ID: 25, Width: 700, Height: 700, Format: JPEG},
	{ID: 26, Width: 800, Height: 600, Format: JPEG, Crop: true},
	{ID: 27, Width: 715, Height: 402, Format: JPEG, Crop: true},
	{ID: 28, Width: 768, Height: 432, Format: JPEG, Crop: true},
	{ID: 29, Width: 100, Height: 75, Format: JPEG, Crop: true},
	{ID: 31, Width: 1024, Height: 1024, Format: PNG},
	{ID: 32, Width: 380, Height: 285, Format: JPEG, Crop: true},
	{ID: 33, Width: 368, Height: 276, Format: JPEG, Crop: true},
	{ID: 36, Width: 400, Height: 300, Format: JPEG, Crop: true},
	{ID: 37, Width: 168, Height: 126, Format: JPEG, Crop: true},
	{ID: 38, Width: 144, Height: 108, Format: JPEG, Crop: true},
	{ID: 41, Width: 210, Height: 210, Format: JPEG},
	{ID: 42, Width: 50, Height: 50, Format: JPEG},
	{ID: 43, Width: 100, Height: 100, Format: JPEG},
	{ID: 44, Width: 200, Height: 200, Format: JPEG},
	{ID: 50, Width: 140, Height: 140, Format: JPEG},
	{ID: 65, Width: 700, Height: 700, Format: JPEG},
	{ID: 66, Width: 1200, Height: 1200, Format: JPEG},
	{ID: 67, Width: 350, Height: 350, Format: JPEG},
	{ID: 68, Width: 210, Height: 210, Format: JPEG},
	{ID: 69, Width: 700, Height: 700, Format: JPEG},
}

Functions

This section is empty.

Types

type Band

type Band struct {
	Name        string
	Discography []Item
}

type Image

type Image struct {
	Crop   bool
	Format int
	Height int
	ID     int64
	Width  int
}

func (Image) URL

func (i Image) URL(art_id int64) string

Extension is optional.

type Item

type Item struct {
	Band_ID   int
	Item_ID   int
	Item_Type string
}

func (Item) Band

func (i Item) Band() (*Band, error)

func (Item) Tralbum

func (i Item) Tralbum() (*Tralbum, error)

type Params

type Params struct {
	A_ID   int
	I_ID   int
	I_Type string
}

func New_Params

func New_Params(ref string) (*Params, error)

func (Params) Band

func (p Params) Band() (*Band, error)

func (Params) Tralbum

func (p Params) Tralbum() (*Tralbum, error)

type Track

type Track struct {
	Track_Num     int64
	Title         string
	Band_Name     string
	Streaming_URL *struct {
		MP3_128 string `json:"mp3-128"`
	}
}

func (Track) String

func (t Track) String() string

type Tralbum

type Tralbum struct {
	Art_ID         int64
	Release_Date   int64
	Title          string
	Tralbum_Artist string
	Tracks         []Track
}

func (Tralbum) Date

func (t Tralbum) Date() time.Time

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL