当前位置: 首页 > 知识库问答 >
问题:

android-如何在我的音乐播放器中从文件管理器播放mp3文件?

岳浩宕
2023-03-14

我已经在android studio中创建了一个音乐播放器应用程序。当我运行它时,没有问题,应用程序运行良好,但当我尝试从文件管理器播放歌曲时,应用程序选择弹出窗口显示我的应用程序。当我选择音乐播放器时,它会打开音乐播放器,但不会播放歌曲。只显示最后播放的歌曲。如何自动播放所选歌曲?我有什么需要捕捉的意图吗?

AndroidManifest。xml

<activity
        android:name=".activities.MainActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="content"/>
            <data android:scheme="file"/>
            <data android:mimeType="audio/*"/>
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

主要活动。JAVA

public void onCreate(Bundle savedInstanceState) {

    sMainActivity = this;
    action = getIntent().getAction();

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    navigationMap.put(Constants.NAVIGATE_LIBRARY, navigateLibrary);
    navigationMap.put(Constants.NAVIGATE_PLAYLIST, navigatePlaylist);
    navigationMap.put(Constants.NAVIGATE_QUEUE, navigateQueue);
    navigationMap.put(Constants.NAVIGATE_NOWPLAYING, navigateNowplaying);
    navigationMap.put(Constants.NAVIGATE_ALBUM, navigateAlbum);
    navigationMap.put(Constants.NAVIGATE_ARTIST, navigateArtist);

    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    panelLayout = (SlidingUpPanelLayout) findViewById(R.id.sliding_layout);

    navigationView = (NavigationView) findViewById(R.id.nav_view);
    View header = navigationView.inflateHeaderView(R.layout.nav_header);

    albumart = (ImageView) header.findViewById(R.id.album_art);
    songtitle = (TextView) header.findViewById(R.id.song_title);
    songartist = (TextView) header.findViewById(R.id.song_artist);

    setPanelSlideListeners(panelLayout);

    navDrawerRunnable.postDelayed(new Runnable() {
        @Override
        public void run() {
            setupDrawerContent(navigationView);
            setupNavigationIcons(navigationView);
        }
    }, 700);


    if (RamUtils.isMarshmallow()) {
        checkPermissionAndThenLoad();
    } else {
        loadEverything();
    }

    addBackstackListener();
}

共有1个答案

范承望
2023-03-14

如何自动播放所选歌曲?

如果您的应用程序显示在选择器中,您必须具有正确的

然后,您所需要做的就是调用getIntent(). getData()fromonCreative()(可能还有onNewIntent(),这取决于您如何处理清单中的任务)。这将为您提供内容的Uri,它将与您在中输入的规范相匹配

 类似资料:
  • 我正在为android开发音乐播放器。我编写了一个代码,从android手机上获取所有音频(标题、艺术家姓名、uri、专辑艺术)。但问题是加载所有歌曲需要1分钟以上。所有音乐播放器应用如何处理此问题。有没有办法一首接一首地获取或加载音频歌曲并添加到RecyclerView中。比如Facebook新的订阅源。首先,当用户向下滚动时,它会加载几个故事,然后再加载几个故事。请帮我解决这个问题

  • 当我使用MediaPlayer播放mp3文件时,系统会报告错误日志:。但是RealPlayer是正常的。 我发现它的错误只发生在更高的ROM版本。像4.0版本一样,它有错误。在2.3版中,它没有这个错误。 代码: 日志猫错误:

  • 你好,有人能告诉我如何玩mp3/mp4到Android默认浏览器吗? 我在参考资料中的原始文件夹中有mp3/mp4文件。 我尝试了下面的代码,但被忽略,无法工作,它将打开默认播放器,但没有播放选定的文件。 谁能推荐一下吗?

  • 如何在android的简单播放器中播放Resources/raw中的mp3文件?类似于android中默认文件管理器中的文件预览 请帮帮我

  • 基于jPlyer开发的音乐播放插件. 支持如下功能: 1,进度条播放 。 2,上一首,下一首,随机播放 。 3,播放完每一首后,自动播放下一首,如果下一首是最后一首,则自动播放第一首。 4,支持鼠标滚动操作,能上下翻滚屏幕。 5,歌曲时间 倒计时 ,而不是从0开始计时。 效果演示地址: http://www.cssrain.cn/jPlayer/jPlayerV2.0/demo.html

  • 用ios自带的AVAudio实现的音乐播放器。可以播放存放在电脑里面的音乐文件,可以调整声音音量。播放的时候界面会有下雪的效果。可以作为练习动画和音频播放的例子。 [Code4App.com]