Upgraded App that uses SL Media Framework and MVVM-Lite from WP7 to WP7.1
I have a WP7 app that I recently upgraded to WP7.1 (including the MVVM-Lite assemblies) and the SL Media Framework player (SMF) stopped working. I turned on logging in the player and noticed that the decoder plugin it was looking for was not found. The SMF uses MEF to find the plugins and it was not able to find the plugin for my media.
I created a test project with just the SMF player and I was able to play SmoothStreaming and Progressive videos no problem. So one by one I added the referenced dlls that were in my real app into the test app - and when I added the MVVM-Lite 7.1 and Blend 7.1 assemblies (System.Windows.Interactivity and Microsoft.Expression.Interactions) - the MEF discovery of the plugins stopped working.
I then reverted the MVVM-Lite and Blend SDK assemblies back to v7 and the plugins were now discovered with no issues.
I am unaware of any use of MEF in the Blend SDK or MVVM-Lite but it appears there is 开发者_C百科an issue between SMF's MEF discovery when used with the Blend SDK 7.1 and MVVM-Lite 7.1 assemblies.
Any thoughts or insight into this? BTW - the SMF does not have a new version for WP7.1
thanks Michael
I had the same problem. So, I started digging into this problem and I found the reason why is this happening.
The problem is System.Windows.Interactivity. SMF and MVVM Light are using different versions of this dll. You have to make sure that Microsoft.SilverlightMediaFramework.Utilities.Phone project and your main project are refering to the same version.
In my case I updated SMF to reference version 3.8.5.0.
If you do not want to update the reference, then you can simply exclude the NavigationBehavior.cs class from Microsoft.SilverlightMediaFramework.Utilities.Phone project.
Hope it helps.
精彩评论