安卓系统中应用“assets”文件夹的路径是什么?

5

我正在开发一个Android应用程序,希望将一个视频文件(mp4)捆绑在.apk文件中,以便在启动应用程序时播放短的介绍视频。

不幸的是,我无法确定在项目文件夹中应该放置这个视频文件,并且也不知道如何访问它(文件路径)。

我正在使用videoView.setVideoPath();

非常感谢您提供的任何帮助。 谢谢


1
很遗憾,他们的视频元素“演示”并没有涵盖这样基本的事情,而是在那里留下了一个空白的 path = "";。(http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/VideoViewDemo.html) - Nappy
2个回答

11
将其放置在res\raw文件夹中。然后在代码中使用此URI:"android.resource://com.mypackagename/raw/myvideosample"。

2
成功了!谢谢。作为未来读者的附注,您应该省略文件扩展名。只有当我从路径中省略文件扩展名时,我的工作才有效。 - justinl
谢谢你。我在很多地方搜索了这段代码,非常感谢你提供这个宝贵的代码。 - Sanal MS
@Orsol 我使用了你的答案,但是出现了这个错误 android.database.sqlite.SQLiteException: 无法打开数据库文件 sqlite3_open_v2("android.resource://com.android.mds.calculator/raw/calculator", &handle, 2, NULL) 失败。 - vnshetty
@vnshetty,你如何使用Sqlite,这个答案与此无关。 - Denis Palnitsky
@Orsol 我有一个SQLite文件,将其放置在raw文件夹中,并尝试通过给出myDataBase = SQLiteDatabase.openDatabase("android.resource://com.android.mds.calculator/raw/calculator", null, SQLiteDatabase.OPEN_READONLY);来打开该文件,但是出现了上述错误。 - vnshetty
@Orsol:我认为问题出在数据库文件上,而不是路径。尝试使用这个指南http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/来使用你自己的数据库。 - Denis Palnitsky

1

你应该将它放在/res/raw目录下,并使用以下方式访问

getResources().openRawResource(id)

这里查找更多信息。


谢谢。我尝试过这个方法,但我认为setVideoPath()需要一个文件路径(字符串),而不是资源ID。当我使用这种技术时,它无法播放。 - justinl

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接