Документация android. net .Uri гласит:
"В интересах производительности этот класс выполняет проверку почти без проверки. Поведение не определено для неверного ввода. Этот класс очень простителен - перед лицом некорректного ввода он будет возвращать мусор, а не выбрасывать исключение, если не указано иное. "
Он предоставляет метод normalizeScheme () , который гласит:
"Этот метод не проверяет неверные URI или исправляет плохо отформатированные URI - поэтому не используйте его для проверки входных данных. Uri всегда будет возвращаться, даже если Uri плохо отформатирован для начала и компонент схемы не может быть найден. "
Вышеприведенное наверняка объясняет, что делает класс , а не . Но это не имеет никакого отношения к тому, как вы должны go делать проверку, если вам нужно. Выполняя поиск через Stack Overflow и Google, я также не нашел ничего полезного.
Итак, если вы получаете данные Uri из пользовательского ввода, как вы должны go проверить их?