Temukan aplikasi Spotify Tweak terbaik untuk menikmati Spotify Premium secara gratis. Unduh Spotify ++ untuk iOS 18, iOS 17, iOS 16, dan iOS 15 pada 2024, tidak diperlukan jailbreak. Versi Spotify ++ ini kompatibel dengan semua iPhone dan iPad.
Spotify ++ untuk iOS adalah versi modifikasi dari Spotify yang dirancang untuk perangkat iPhone, iPad, dan iPod Pro. Berikut adalah daftar terbaru yang diperbarui dari aplikasi Tweak Best Spotify untuk menghemat waktu Anda.
Spotify Tweak Name | Keterangan |
---|---|
EeveeSpotify | Tweak ini membuat Spotify berpikir Anda memiliki langganan premium, memberikan mendengarkan gratis seperti Spotilife. Ini juga menyediakan fitur tambahan seperti lirik khusus. |
Spotify++ | Spotify ++ untuk iOS adalah versi modifikasi dari aplikasi streaming musik populer yang dirancang untuk perangkat Apple seperti iPad dan iPhone. Dikembangkan oleh pembuat pihak ketiga, aplikasi tweak ini membuka kunci fitur Premium Spotify tanpa berlangganan, memberi Anda pengalaman bebas iklan dan pemutaran lagu sesuai permintaan. |
Spotube | Spotube adalah pemutar musik untuk iOS dengan dukungan API Spotify. Ini berfungsi sebagai alternatif untuk Spotify, memberikan pengguna akses tidak terbatas ke seluruh koleksi musik mereka dalam daftar putar dan perpustakaan Spotify mereka. Memanfaatkan API data yang kuat Spotify, Spotube dengan mulus terintegrasi dengan platform seperti YouTube, Piped.video, atau Jiosaavn, menawarkan streaming musik gratis dan bebas iklan. |
Spotilife | Spotilife adalah aplikasi spotify iOS tweak yang menghapus iklan, menghilangkan lompatan terbatas, dan membuka kunci hampir setiap fitur premium lainnya. |
Dimulai dengan Versi Spotify ++, aplikasi mencegat permintaan Spotify untuk memuat data pengguna, deserialisasi, dan memodifikasi parameter secara real-time. Metode ini sangat stabil dan efektif, memungkinkan pengguna untuk memilih metode penambalan premium dinamis di pengaturan Spotify ++.
Setelah login, Spotify mengambil data pengguna dan cache di file offline.bnk
yang terletak di /Library/Application Support/PersistentCache
Directory. Ini menyimpan data dalam format biner miliknya, termasuk byte panjang sebelum setiap nilai dan konvensi lainnya. Kunci seperti player-license
, financial-product
, streaming-rules
, dan lainnya menentukan kemampuan pengguna.
Tweak Patches file ini selama inisialisasi; Spotify kemudian memuatnya, dengan asumsi pengguna memiliki akses premium. Namun, karena tantangan dengan panjang dinamis dan byte yang bervariasi, penambalan aktual mungkin tidak terjadi. Tweak mengekstrak nama pengguna dari file offline.bnk
saat ini dan memasukkannya ke premiumblank.bnk
, file yang berisi semua nilai premium preset, mengganti offline.bnk
. Jika Spotify memuat ulang data pengguna, pengguna dapat dialihkan ke paket gratis, memicu sembulan dengan opsi untuk memulai ulang aplikasi dengan cepat dan mengatur ulang data.
Selain itu, set Tweak trackRowsEnabled
di SPTFreeTierArtistHubRemoteURLResolver
ke true
, memungkinkan Spotify untuk memuat tidak hanya melacak nama pada halaman artis. Meskipun fungsi ini dapat berhenti, mirip dengan Spotilife, itu tetap efektif pada versi Spotify 8.9 ## terbaru. (Spotilife juga memodifikasi offline.bnk
, tetapi mengubah byte tidak jelas yang tidak berpengaruh pada versi yang lebih baru).
Untuk membuka tautan Spotify di aplikasi sideloaded, pastikan aktivasi dan izin akses di Pengaturan> Safari> Ekstensi.
Temukan Spotify ++, versi yang disempurnakan dari Spotify yang disesuaikan untuk perangkat iOS. Nikmati fitur premium tanpa berlangganan, musik bebas iklan dan streaming video, pemutaran HD, dan banyak lagi. Mudah mengunduh dan menginstal Spotify ++ di iPhone atau iPad Anda tanpa jailbreak. Tetap diperbarui dengan versi iOS terbaru dan akses konten eksklusif sebelum orang lain.
Fitur | Keterangan |
---|---|
Fitur premium secara gratis | Access Spotify Fitur Premium Tanpa berlangganan, termasuk mendengarkan bebas iklan. |
Pengalaman bebas iklan | Hilangkan gangguan tanpa iklan selama sesi streaming musik dan video. |
Pemutaran HD | Nikmati kualitas audio dan video sejernih kristal dalam mode HD penuh. |
Skips tanpa batas | Lewati trek tanpa batasan, memberi Anda kendali penuh atas daftar putar musik Anda. |
Impor musik | Mudah mengimpor trek dari penyimpanan perangkat Anda ke Spotify ++, memperluas perpustakaan musik Anda. |
Unduh Gratis | Unduh Spotify ++ secara gratis dan tingkatkan pengalaman musik Anda tanpa biaya apa pun. |
Tidak diperlukan jailbreak | Instal Spotify ++ dengan aman di perangkat iOS Anda tanpa perlu melakukan jailbreak. |
Kompatibilitas iOS | Kompatibel dengan iOS 15 dan iOS 16, memastikan kinerja optimal pada perangkat Apple terbaru. |
Tidak ada shuffle paksa | Dengarkan musik Anda sesuai urutan yang Anda sukai, tanpa fitur shuffle paksa di Spotify ++. |
Unduh favorit | Simpan trek favorit untuk mendengarkan secara offline dengan mengunduhnya di dalam aplikasi. |
Pertama, mari kita tingkatkan model Song
kami untuk memasukkan lebih banyak properti seperti fileURL
untuk bermain audio dan isPlaying
untuk melacak status bermain saat ini:
struct Song {
let id : Int
let title : String
let artist : String
let album : String
let duration : Int // in seconds
let artwork : String // image name or URL
let fileURL : URL // URL to audio file
var isPlaying : Bool = false
}
Selanjutnya, mari kita perbarui kelas AudioPlayer
kami untuk mendukung fitur pemutaran audio yang lebih canggih menggunakan AVPlayer
:
import AVFoundation
class AudioPlayer {
static let shared = AudioPlayer ( )
private var player : AVPlayer ?
private var currentSong : Song ?
func play ( song : Song ) {
if currentSong ? . id == song . id {
// If the same song is already playing, toggle play/pause
if player ? . rate == 0 {
player ? . play ( )
} else {
player ? . pause ( )
}
} else {
// Play a new song
currentSong = song
player = AVPlayer ( url : song . fileURL )
player ? . play ( )
// Update the isPlaying state of the song
song . isPlaying = true
}
}
func pause ( ) {
player ? . pause ( )
if let song = currentSong {
song . isPlaying = false
}
}
func stop ( ) {
player ? . pause ( )
player = nil
if let song = currentSong {
song . isPlaying = false
}
}
func seek ( to time : TimeInterval ) {
player ? . seek ( to : CMTime ( seconds : time , preferredTimescale : 1 ) )
}
}
Sekarang, mari kita tingkatkan pandangan SwiftUi kita untuk memasukkan kontrol pemutaran (Play/Pause, Seek Bar):
import SwiftUI
import AVFoundation
struct ContentView : View {
@ State private var songs : [ Song ] = [
Song ( id : 1 , title : " Song 1 " , artist : " Artist A " , album : " Album X " , duration : 180 , artwork : " song1 " , fileURL : Bundle . main . url ( forResource : " song1 " , withExtension : " mp3 " ) ! ) ,
Song ( id : 2 , title : " Song 2 " , artist : " Artist B " , album : " Album Y " , duration : 200 , artwork : " song2 " , fileURL : Bundle . main . url ( forResource : " song2 " , withExtension : " mp3 " ) ! )
// Add more songs as needed
]
@ State private var isPlaying = false
@ State private var currentSong : Song ?
@ State private var currentTime : TimeInterval = 0
@ State private var duration : TimeInterval = 0
var body : some View {
NavigationView {
VStack {
if let song = currentSong {
VStack {
Image ( song . artwork )
. resizable ( )
. aspectRatio ( contentMode : . fit )
. frame ( width : 200 , height : 200 )
Text ( song . title )
. font ( . title )
. padding ( . top , 8 )
Text ( song . artist )
. font ( . headline )
. foregroundColor ( . gray )
. padding ( . bottom , 8 )
Text ( timeToString ( time : currentTime ) + " / " + timeToString ( time : duration ) )
. font ( . caption )
. foregroundColor ( . gray )
. padding ( . bottom , 16 )
HStack {
Button ( action : {
self . previous ( )
} ) {
Image ( systemName : " backward.fill " )
. font ( . title )
. foregroundColor ( . blue )
}
. padding ( . trailing , 40 )
Button ( action : {
self . playPause ( )
} ) {
Image ( systemName : isPlaying ? " pause.circle.fill " : " play.circle.fill " )
. font ( . system ( size : 80 ) )
. foregroundColor ( . blue )
}
Button ( action : {
self . next ( )
} ) {
Image ( systemName : " forward.fill " )
. font ( . title )
. foregroundColor ( . blue )
}
. padding ( . leading , 40 )
}
. padding ( . top , 32 )
Slider ( value : Binding (
get : { self . currentTime } ,
set : { newValue in
self . seek ( to : newValue )
}
) , in : 0 ... duration )
. padding ( . horizontal )
}
. onAppear {
self . play ( song : song )
}
} else {
Text ( " Select a song to play " )
. font ( . title )
. foregroundColor ( . gray )
}
List ( songs , id : . id ) { song in
SongRow ( song : song , isSelected : song . id == self . currentSong ? . id )
. onTapGesture {
self . currentSong = song
}
}
. navigationBarTitle ( " Music Player " )
}
}
. onReceive ( Timer . publish ( every : 1 , on : . main , in : . common ) . autoconnect ( ) ) { _ in
if self . isPlaying , let player = AudioPlayer . shared . player {
self . currentTime = player . currentTime ( ) . seconds
self . duration = player . currentItem ? . duration . seconds ?? 0
}
}
}
private func play ( song : Song ) {
AudioPlayer . shared . play ( song : song )
isPlaying = true
}
private func playPause ( ) {
if let song = currentSong {
if isPlaying {
AudioPlayer . shared . pause ( )
} else {
play ( song : song )
}
isPlaying . toggle ( )
}
}
private func seek ( to time : TimeInterval ) {
AudioPlayer . shared . seek ( to : time )
}
private func next ( ) {
guard let currentIndex = songs . firstIndex ( where : { $0 . id == currentSong ? . id } ) , currentIndex < songs . count - 1 else {
return
}
currentSong = songs [ currentIndex + 1 ]
}
private func previous ( ) {
guard let currentIndex = songs . firstIndex ( where : { $0 . id == currentSong ? . id } ) , currentIndex > 0 else {
return
}
currentSong = songs [ currentIndex - 1 ]
}
private func timeToString ( time : TimeInterval ) -> String {
let minutes = Int ( time ) / 60
let seconds = Int ( time ) % 60
return String ( format : " %02d:%02d " , minutes , seconds )
}
}
struct SongRow : View {
let song : Song
let isSelected : Bool
var body : some View {
HStack {
Image ( song . artwork )
. resizable ( )
. aspectRatio ( contentMode : . fit )
. frame ( width : 50 , height : 50 )
VStack ( alignment : . leading ) {
Text ( song . title )
. font ( . headline )
Text ( song . artist )
. font ( . subheadline )
}
Spacer ( )
if isSelected {
Image ( systemName : " speaker.fill " )
. foregroundColor ( . blue )
. padding ( . trailing , 20 )
}
}
. padding ( 8 )
}
}
iPhone 16 (mendatang), iPhone 15 Pro Max, iPhone 15 Pro, iPhone 15 Plus, iPhone 15, iPhone 14 Pro Max, iPhone 14 Pro, iPhone 14 Plus, iPhone 14.
iPhone 13 Pro Max, iPhone 13 Pro, iPhone 13 Mini, iPhone 13, iPhone 12 Pro Max, iPhone 12 Pro, iPhone 12 Mini, iPhone 12, iPhone 11 Pro Max, iPhone 11 Pro, iPhone 11, iPhone XS Max, iPhone XS , iPhone XR, iPhone X.
Spotify for iOS 18:
iOS 18 beta
Spotify for iOS 17:
iOS 17.6, iOS 17.5.1, iOS 17.5, iOS 17.4.1, iOS 17.4, iOS 17.3.1, iOS 17.3, iOS 17.2.1, iOS 17.2, iOS 17.1.2, iOS 17.1.1, iOS 17.1, iOS 17.0.3, iOS 17.0.2, iOS 17.0.1, iOS 17.
Spotify for iOS 16:
iOS 16.7.5, iOS 16.7.4, iOS 16.7.3, iOS 16.7.2, iOS 16.7.1, iOS 16.7, iOS 16.6.1, iOS 16.6, iOS 16.5.1, iOS 16.5, iOS 16.4.1, iOS 16.4, iOS 16.3.1, iOS 16.3, iOS 16.2, iOS 16.1.2, iOS 16.1.1, iOS 16.1, iOS 16.0.3, iOS 16.0.2, iOS 16.0.1, IOS 16.
Spotify for iOS 15:
iOS 15.8.2, iOS 15.8.1, iOS 15.8, iOS 15.7.9, iOS 15.7.8, iOS 15.7.7, iOS 15.7.6, iOS 15.7.5, iOS 15.7.4, IOS 15.7 .3, iOS 15.7.2, iOS 15.7.1, iOS 15.7, iOS 15.6.1, iOS 15.6, iOS 15.5, iOS 15.4.1, iOS 15.4, iOS 15.3.1, iOS 15.3, iOS 15.2.1, IOS 15.2 , iOS 15.1.1, iOS 15.1, iOS 15.0.2, iOS 15.0.1, iOS 15.
Spotify for iOS 14:
iOS 14.8.1, iOS 14.8, iOS 14.7.1, iOS 14.7, iOS 14.6, iOS 14.5.1, iOS 14.5, iOS 14.4.2, iOS 14.4.1, iOS 14.4, iOS 14.3, iOS 14.2 .1, iOS 14.2, iOS 14.1, iOS 14.0.1, iOS 14.
Spotify for iOS 13:
iOS 13.7, iOS 13.6.1, iOS 13.6, iOS 13.5.1, iOS 13.5, iOS 13.4.1, iOS 13.4, iOS 13.3.1, iOS 13.3, iOS 13.2.3, iOS 13.2.2, iOS 13.2, iOS 13.1.3, iOS 13.1.2, iOS 13.1.1, iOS 13.1, iOS 13.
Spotify for iOS 12:
iOS 12.5.7, iOS 12.5.6, iOS 12.5.5, iOS 12.5.4, iOS 12.5.3, iOS 12.5.2, iOS 12.5.1, iOS 12.5, iOS 12.4.9, iOS 12.4 .8, iOS 12.4.7, iOS 12.4.6, iOS 12.4.5, iOS 12.4.4, iOS 12.4.3, iOS 12.4.2, iOS 12.4.1, iOS 12.4, iOS 12.3.2, iOS 12.3.1 , iOS 12.3, iOS 12.2, iOS 12.1.4, iOS 12.1.3, iOS 12.1.2, iOS 12.1.1, iOS 12.1, iOS 12.0.1, iOS 12.
Proyek ini open-source dan diatur oleh lisensi MIT. Anda dipersilakan untuk memanfaatkan, memodifikasi, dan mendistribusikannya dalam kondisi yang diuraikan dalam perjanjian lisensi.
Kami memberikan apresiasi yang tulus kepada individu dan tim yang dedikasi dan upayanya memungkinkan proyek Spotify ++. Kontribusi mereka sangat berharga: