2017-05-01 3 views
8

J'utilise Com4j laisser mon application Java comunicate avec iTunes sur Windows, j'ai vu que mes classes générées DonT contiennent des méthodes pour me laisser mettre à jour mouvement et travail domaines comme je peux mettre à jour d'autres domaines tels que artiste ou album.ITunes ne marche pas semblent exposer les interfaces COM pour ses nouveaux champs de mouvement et de travail

Je regenned les classes à l'aide

c:\Code\jthink\opensrc\com4j-20120426-2>java -jar tlbimp.jar -o C:\Code\jthink\SongKong\src\main\java -p com.jthink.songkong.itunes "C:\Program Files\iTunes\iTunes.exe" 

contre le dernier iTunes 12.6 exe et ils ne coûtent pas encore là. (Je m'attendrais à eux dans IITFileOrCDTrack.java) suis-je en train de faire quelque chose de mal ou cela signifie-t-il que iTunes doit expliciter le code pour y exposer de nouveaux champs et ils ont décidé de ne pas le faire.

Donc, cela signifie iTunes a le code explicity une nouvelle interface COM pour rendre ces champs accessibles à d'autres programmes

Remarque ces nouveaux champs sont disponibles via AppleScript sur une machine Mac

+0

L'ajout répété de primes à cette question ne va pas empêcher les programmeurs Apple de se défouler. Vous pouvez utiliser l'utilitaire OleView.exe sdk (Fichier> Afficher Typelib) pour voir à quoi vous pouvez vous attendre. Le numéro de version de bibliothèque de types est 1.13, pas un nombre encourageant pour une version de programme 2.x. Et vous ne trouverez rien de "mouvement" ou de "travail" dans la version 12.6, autre que la propriété Grouping. Déposer un rapport de bogue et vous pourriez obtenir quelque part. –

+0

Merci @HansPassant - n'était pas réel, je savais que vous pourriez déposer des bogues contre Apple. –

Répondre

0

Comme indiqué dans ci-dessus comment vous avez deux possibilités:

  1. fichier un bug avec Apple et attendre (peut-être indéfiniment)
  2. Utilisez le champ grouping au lieu

Personnellement, j'ai trouvé le champ grouping pour remplir le rôle de 'sous-catégorie'. Bien que je réalise qu'il est moins idéal que d'avoir la possibilité d'utiliser à la fois movement et work champs, j'ai été en mesure d'accomplir la fonctionnalité souhaitée via grouping jusqu'à présent.

+0

J'ai besoin d'écrire du travail et du mouvement, mais de la honte de le gaspiller Je vous donne la générosité de suggérer de produire un rapport de bogue –