【发布时间】:2010-11-26 13:58:22
【问题描述】:
模拟器有 3 首歌曲,这不足以确保我正在处理的歌曲选择代码将管理超过 3 首歌曲。
所以只是想知道这是否可能?
【问题讨论】:
标签: windows-phone-7 xna
模拟器有 3 首歌曲,这不足以确保我正在处理的歌曲选择代码将管理超过 3 首歌曲。
所以只是想知道这是否可能?
【问题讨论】:
标签: windows-phone-7 xna
很遗憾,无法将歌曲添加到模拟器中。
您必须使用真实设备进行测试。
【讨论】:
MediaLibrary添加图片。我怀疑添加歌曲会有点复杂,因为您需要考虑艺术作品、艺术家、专辑、流派等。也许在未来的版本中。
其实你可以使用一个应用来做到这一点:
Uri file = new Uri("Assets/Happy.mp3", UriKind.Relative);
//copy file to isolated storage
var myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication();
var fileStream = myIsolatedStorage.CreateFile("someSong.mp3");
var resource = Application.GetResourceStream(file);
int chunkSize = 4096;
byte[] bytes = new byte[chunkSize];
int byteCount;
while ((byteCount = resource.Stream.Read(bytes, 0, chunkSize)) > 0)
{
fileStream.Write(bytes, 0, byteCount);
}
fileStream.Close();
Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata metaData =
new Microsoft.Xna.Framework.Media.PhoneExtensions.SongMetadata();
metaData.AlbumName = "Some Album name";
metaData.ArtistName = "Some Artist Name";
metaData.GenreName = "test";
metaData.Name = "someSongName";
var ml = new MediaLibrary();
Uri songUri = new Uri("someSong.mp3", UriKind.RelativeOrAbsolute);
var song = Microsoft.Xna.Framework.Media.PhoneExtensions.MediaLibraryExtensions.SaveSong(ml, songUri, metaData, Microsoft.Xna.Framework.Media.PhoneExtensions.SaveSongOperation.CopyToLibrary);
【讨论】:
The type or namespace name 'PhoneExtensions' does not exist in the namespace 'Microsoft.Xna.Framework.Media' (are you missing an assembly reference?)。此外,我无法添加对microsoft.xna.framework.media.phoneextensions.dll 的引用,因为它不存在。我无法在互联网上的任何地方获取 dll。