如何获取Assets的路径

简介:
有两种方法可以获取assets的绝对路径:

 第一种方法:
       String path = file:///android_asset/文件名;
 第二种方法:
         InputStream abpath = getClass().getResourceAsStream("/assets/文件名");

 

        But,这样获取的路径并不能直接访问到assets的资源,如果一个mp3放在assets下,通过以上两种方法获得的路径并不能直接播放里面的mp3文件,why?

 

        那是因为在安卓应用中使用assets目录下存放的资源文件,是代表应用无法直接访问的原生资源,应用程序通过AssetManager以二进制流的形式来读取资源。

 

 第一种获取路径的方法,目前我所知道的,只是针对html的展示来使用的,比如你用到了webview,那么html的path可以用这种方法显示,其他情况不行。

 

        那么我们想用MediaPlayer播放里面的视频或者音乐该怎么做呢?可以以以下方式进行播放!

 

            MediaPlayer mediaPlayer=new MediaPlayer();

            AssetFileDescriptor afd = getAssets().openFd("musics/SleepOceation.mp3");
            mediaPlayer.setDataSource(afd.getFileDescriptor());

            mediaPlayer.prepare();(注意这句话必须有!)

            mediaPlayer.start();

 

           OK,这样就能顺利播放assets下的音乐或者视频文件了!
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5612475.html,如需转载请自行联系原作者

相关文章
|
机器学习/深度学习 算法 安全
内容过滤算法:构建数字世界的守护者
内容过滤算法:构建数字世界的守护者
|
网络协议 Java
【工具】Mermaid + 大模型画流程图
最近看面试文章关于TCP三次握手和四次挥手的文章,时常会看到有类似的图去描述这样的过程。当然觉得这样的图还是蛮规范的,属于流程图的一种,是否有工具可以自动生成呢?但没有细想,昨天刷V2EX看到也有老哥发出了这样的问题。于是顺着评论区大佬的回答,我GET到了一个工具Mermaid 这里三次握手的图取自小林coding的文章
2399 0
|
5月前
|
Ubuntu 应用服务中间件 Linux
使用阿里云服务器部署网站,保姆级教程(nginx部署及宝塔部署)
本文详解如何在阿里云轻量服务器上部署网站,涵盖两种主流方案:一是手动配置Nginx(含安装、启停、修改配置及静态文件部署);二是使用图形化宝塔面板(一键安装、建站、上传文件与路径配置)。配套Xshell远程连接和Xftp文件管理,适合新手与进阶用户。
使用阿里云服务器部署网站,保姆级教程(nginx部署及宝塔部署)
|
7月前
|
人工智能 运维 安全
从技术角度解析:网文平台如何判定你的小说有 AI 痕迹?
本文从技术角度解析网文平台AI检测原理:不识别工具,而检测文本统计异常。涵盖词汇多样性、句长波动、短语重复等8大维度,详解多维加权评分机制(0–100分),并提供工程级应对策略——重结构、轻生成,构建“生成—重构—校验”闭环。(239字)
2162 3
|
分布式计算 JavaScript 前端开发
多线程、多进程、协程的概念、区别与联系
多线程、多进程、协程的概念、区别与联系
810 1
|
弹性计算 开发工具 Android开发
阿里云APP备案流程图以及备案所需材料整理,跟着教程一步步操作
阿里云APP备案流程分为六步,确保应用合法上架。首先登录阿里云账号填写APP信息,提交后等待阿里云初审。初审通过后进行工信部短信核验,随后由管局审核。审核通过后,APP即可获得备案号并正式上架分发平台。整个过程需仔细填写主办者及APP详细信息,确保所有资料准确无误。阿小云详细分享了这一流程,帮助开发者顺利完成备案。
|
XML API Android开发
构建高效的安卓应用:使用Jetpack Compose实现动态UI
【4月更文挑战第13天】 在移动应用开发领域,随着用户对流畅体验和即时反馈的期待不断上升,开发者面临着构建高效、响应式且具有丰富交互性的用户界面的挑战。传统的Android开发方法,如基于XML的布局,虽然稳定但往往伴随着较高的资源消耗和较低的开发效率。本文将探讨如何使用Jetpack Compose——一种现代声明式UI工具包,来构建动态且高效的安卓应用界面。通过深入分析Jetpack Compose的核心原理及其与传统方法的对比,揭示如何利用其强大的功能集合提升应用性能和开发效率。我们将通过实例演示如何快速构建可重用组件、实现实时数据绑定,以及优化布局渲染过程,从而为开发者提供一种更简洁、
|
Java 开发工具 Android开发
Android Studio 导出JavaDoc文档
Android Studio 导出JavaDoc文档
845 0
|
Android开发
Android音量细分
【6月更文挑战第3天】
698 0