//Using iTunes Controller
iTunes itc = new iTunes();
itc.playFile(filePath); // Takes type String
正しい行動のようです。ただ、ユーザーが簡単に曲名を指定できるようにしてほしい...
プロンプトを使用して、アーティストとアルバムを取得して、どのフォルダーを参照するかを確認できます。これは、iTunes がそのファイルを保存する方法だからです...(例: C:\Users\username\Music\iTunes\iTunes Media\Artist\Album\song )
指定した曲に直接行く方法を知っている人はいますか? しばらく探していました。
http://www.dot-totally.co.uk/software/itunescon/javadoc-0.2/index.htmlが役立つ場合は、私が使用している API のドキュメントを次に示します。
アップデート - - - - - - - - - - - - - - - - -
だから私は起きた....
//Using iTunes Controller -- Still doesn't work
iTunes itc = new iTunes();
ITSourceCollection sc = (ITSourceCollection) itc.getSources();
ITSource source = sc.getItemByName(song);
int trackID = source.getTrackID();
// Now what to do with the track id? Look for getTrack by ID, then track.play();
// Found that a TrackCollection can return a Track by ID.
// Need to find out how to get the TrackCollection of the library
私は立ち往生しています.... :(
編集:
ソースコレクションから取得できる情報に基づいて、手動でトラックを作成できると考えました。しかし、コンストラクタについて混乱しています...
ITTrack(com.jacob.com.Dispatch d)
???? ITTrack オブジェクトを作成するための正しい構文を明確にできる人はいますか? ここにそのjavadocがありますが、わかりません。
http://www.dot-totally.co.uk/software/itunescon/javadoc-0.2/com/dt/iTunesController/ITTrack.html
アップデート - - - - - - - - - - - - - - - - - - -
Ok。そこで、fetchDispatch() メソッドを使用して ITTrack クラスを作成しました。 http://www.dot-totally.co.uk/software/itunescon/javadoc-0.2/com/dt/iTunesController/ITObject.html#fetchDispatch()
//Using iTunes Controller -- work in progress
iTunes itc = new iTunes();
ITSourceCollection libsource = (ITSourceCollection) itc.getSources();
ITSource trackToPlay = libsource.getItemByName(song);
ITTrack track = new ITTrack(trackToPlay.fetchDispatch());
track.play();
私は今、例外を取得しています:
Exception in thread "main" java.lang.NoSuchMethodError: com.jacob.com.Dispatch.call(Lcom/jacob/com/Dispatch;Ljava/lang/String;Ljava/lang/Object;)Lcom/jacob/com/Variant;
at com.dt.iTunesController.ITSourceCollection.getItemByName(ITSourceCollection.java:49)
at Build.Clapper3.process(-----.java:117)
at Build.Clapper3.main(-----.java:232)
とても近いです!アイテムの「名前」の入力方法に何か問題があります....しかし、何ですか?
入力した場合、おそらく考えました:
System.out.println(libsource.toString());
ソースの名前を見つけるには....しかし、 toString() メソッドがないと思いますか? 出力は次のとおりです。
com.dt.iTunesController.ITSourceCollection@118278a