2014-10-17 36 views
1

我試圖啓動媒體播放器從kivy + android環境中播放HLS鏈接。我可以使用我從網上獲得的示例代碼(下面給出)啓動默認媒體播放器。但我已經安裝了另一個更好的媒體播放器(https://play.google.com/store/apps/details?id=veg.network.mediaplayer),我希望通過該URL啓動。任何想法如何我可以繼續這一點?是否有可能從kivy創建意圖? (注:我使用kivy發射器,而不是APK(buildozer))從kivy啓動android播放器

from jnius import autoclass 
from time import sleep 

# get the MediaPlayer java class 
MediaPlayer = autoclass('android.media.MediaPlayer') 
#MediaPlayer = autoclass('veg.network.mediaplayer') 
# create our player 
mPlayer = MediaPlayer() 
mPlayer.setDataSource('http://www.nasa.gov/multimedia/nasatv/NTV-Public-IPS.m3u8') 
mPlayer.prepare() 

# play 
print 'duration:', mPlayer.getDuration() 
mPlayer.start() 
print 'current position:', mPlayer.getCurrentPosition() 
sleep(50) 

# then after the play: 
mPlayer.release() 

THX, GL

回答

1

從Kivy是的,你可以創建你的意圖訪問其他Java類一樣。也許像這樣:

PythonActivity = autoclass('org.renpy.android.PythonActivity') 
Intent = autoclass('android.content.Intent') 
Uri = autoclass('android.net.Uri') 
media_intent = Intent(Intent.ACTION_VIEW) 
uri = Uri.parse('http://www.nasa.gov/multimedia/nasatv/NTV-Public-IPS.m3u8') 
media_intent.setDataAndType(uri, 'video/*') 
PythonActivity.mActivity.startActivity(media_intent)