如何在android中存储同名不同扩展名的资源文件
我正在开发一个静态定制的Android媒体播放器应用程序,其中有许多媒体文件存储在如何在android中存储同名不同扩展名的资源文件,android,media-player,android-resources,Android,Media Player,Android Resources,我正在开发一个静态定制的Android媒体播放器应用程序,其中有许多媒体文件存储在raw文件夹中。 其中由于一些文件具有相同的名称但不同的扩展名,这里android给了我 res\raw\then.mp4:0:错误:已定义资源条目then。 res\raw\then.mp3:0:最初在此处定义。 有人能给我提些建议吗 还有一些媒体文件带有java关键字,如if、else、return、switch、case、class、else、final、long、new、this、true等其中androi
raw
文件夹中。
其中由于一些文件具有相同的名称但不同的扩展名,这里android给了我
res\raw\then.mp4:0:错误:已定义资源条目then。
res\raw\then.mp3:0:最初在此处定义。
有人能给我提些建议吗
还有一些媒体文件带有java关键字,如if、else、return、switch、case、class、else、final、long、new、this、true等其中android向我提供了无效符号错误
请建议我的解决方案也
提前谢谢…你不能Raw
是在编译时在R.java
中生成的,并且name键必须遵循java命名约定。自
if,else,return,switch,case,class,else,final,long,new,
这是真的
是保留关键字,您不能使用它们
编辑:R.java
看起来像谎言:
public static final class raw {
public static final int if=0x70000;
正如@blackbelt所说,这是不可能的,我只想补充一点,您可以将文件放在assets目录中,而不是res目录中。
您将无法像R.id.file那样使用它们,但您将获得更大的灵活性。您可以将资产目录与子文件夹一起使用,这是最简单的方法。是的,我知道,但我需要在我的应用程序中使用它们,我不能告诉客户这些是关键字,我不能使用它。。还有别的选择吗?相同的名字和不同的扩展名呢?谢谢你的帮助:)在这两种情况下你都不能。您可以将其移动到资产
文件夹中谢谢您的建议,我之前尝试过,但问题是我需要维护太多的验证,因为有数千个音频和视频,其中数百个具有相同的名称。我不确定我是否理解维护它的区别,但这可能已经是另一个问题了:)