Eu tentei esta solução, mas tenho um problema com ela. Primeiro, o Uri precisa ser alterado para URI (se for do pacote java.net). Segundo, ele não possui o construtor "analisar". Você tem alguma ideia do que estou fazendo de errado?
@ccheneson Por que Uri deveria estar mais correto que o URI? Com o URI, você pode apenas usar o createmétodo É tão simples de usar quanto Uri. Então, qual o benefício que você tem de Uri?
KBa713 23/03
Isso está certo. As importações erradas também são um dos meus problemas irritantes.
Omid.N 7/03
34
Estou apenas usando o java.netpacote . Aqui você pode fazer o seguinte:
String myUrl ="http://stackoverflow.com";
URI myURI =new URI(myUrl);
Você pode analisar uma String em um Uri usando Uri.parse (), como mostrado abaixo:
Uri myUri =Uri.parse("http://stackoverflow.com");
A seguir, é apresentado um exemplo de como você pode usar seu Uri recém-criado em uma intenção implícita. Para ser visualizado em um navegador no telefone do usuário.
// Creates a new Implicit Intent, passing in our Uri as the second paramater.Intent webIntent =newIntent(Intent.ACTION_VIEW, myUri);// Checks to see if there is an Activity capable of handling the intentif(webIntent.resolveActivity(getPackageManager())!=null){
startActivity(webIntent);}
NB: Há uma diferença entre o Android URI e o Uri .
Mas, por exemplo android.widget.ImageView.setImageURI, não - portanto, é uma pergunta perfeitamente válida.
Martin
1
na verdade, isso não responder à pergunta
Jürgen K.
-1
O analisador de Java java.net.URIfalhará se o URI não estiver totalmente codificado para seus padrões. Por exemplo, tentar analisar: http://www.google.com/search?q=cat|dog. Uma exceção será lançada para a barra vertical.
O urllib facilita a conversão de uma string em a java.net.URI. Ele pré-processará e escapará da URL.
Uri
classe com umparse
método developer.android.com/reference/android/net/Uri.html . Há também umaURI
classe developer.android.com/reference/java/net/URI.html sem umparse
método. Portanto, a classe certa a ser usada éUri
. Certifique-se de que você tem a importação corretacreate
método É tão simples de usar quanto Uri. Então, qual o benefício que você tem de Uri?Estou apenas usando o
java.net
pacote . Aqui você pode fazer o seguinte:fonte
Se você estiver usando Kotlin e Kotlin android extensões, então não é uma bela maneira de fazer isso.
Para adicionar extensões Kotlin ( KTX ) ao seu projeto, adicione o seguinte ao build.gradle do módulo de aplicativo
fonte
Você pode analisar uma String em um Uri usando Uri.parse (), como mostrado abaixo:
A seguir, é apresentado um exemplo de como você pode usar seu Uri recém-criado em uma intenção implícita. Para ser visualizado em um navegador no telefone do usuário.
NB: Há uma diferença entre o Android URI e o Uri .
fonte
O que você vai fazer com o URI?
Se você quiser usá-lo com um HttpGet, por exemplo, poderá usar a string diretamente ao criar a instância HttpGet.
fonte
android.widget.ImageView.setImageURI
, não - portanto, é uma pergunta perfeitamente válida.O analisador de Java
java.net.URI
falhará se o URI não estiver totalmente codificado para seus padrões. Por exemplo, tentar analisar:http://www.google.com/search?q=cat|dog
. Uma exceção será lançada para a barra vertical.O urllib facilita a conversão de uma string em a
java.net.URI
. Ele pré-processará e escapará da URL.fonte