所以我正在使用Android中的URI来为各个联系人设置铃声。问题是,铃声选择器的工作方式是它不喜欢myringtone.mp3
之类的东西。相反,它只是想要myringtone
。很奇怪,但我想这就是它的方式。所以我有一个像file:///sdcard/tag/ringtones/ringtone.mp3
这样的URI。如何获取URI以删除扩展名,以便铃声管理器正确使用它?设置铃声的方式是这一行:
values.put(ContactsContract.Contacts.CUSTOM_RINGTONE, uri.toString());
所以URI是字符串形式。使用子串我应该能够做到,但我不知道如何编写一个方法来删除字符串中的最后4个字符。谁能在这里给我一些建议?
谢谢!
答案 0 :(得分:5)
如果您不知道扩展名是什么或未知长度,请尝试:
uri.toString().substring(0, uri.getString().lastIndexOf("."));
答案 1 :(得分:0)
你试过吗?...
uri.toString().substring(0, uri.toString().length() - 4);