You can keep track of the songs in your own app and the when you start playing the first song, set a timer to fire at the finishTime of the track you started playing. When the timer fires start playing the next song and repeat the timer. If there are no songs to play end with a stop command to iTunes.
@property (retain, nonatomic) NSMutableArray *songsToPlay;
- (void)playNext:(NSTimer *)aTimer {
if (songsToPlay.count) {
iTunesTrack *track = songsToPlay.firstObject;
[track playOnce:YES];
[NSTimer scheduledTimerWithTimeInterval:track.finish - 1.0 target:self selector:@selector(playNext:) userInfo:nil repeats:NO];
[songsToPlay removeObjectAtIndex:0];
}
else {
[iTunes stop];
}
}
Somewhere you prime songToPlay
with iTunesTrack songs and then call [self playNext:nil]
.