Abrir um HTML em um Activity - Android

Bom dia pessoal

Como faço para chamar um HTML em um activity ?

Abraços

Daniel, olha na documentação sobre webview, acho que é o que voce quer.

[quote=danielrgoes]Bom dia pessoal

Como faço para chamar um HTML em um activity ?

Abraços[/quote]

Você pode criar uma inner class na sua activity que estende de WebViewClient, para abrir sua página no seu componente WebView:

public class ClientWeb extends WebViewClient{
		
	@Override
	public void onPageStarted(WebView view, String url, Bitmap favicon) {
		super.onPageStarted(view, url, favicon);
	}
	
	@Override
	public boolean shouldOverrideUrlLoading(WebView view, String url) {
		view.loadUrl(url);
		return true;
	}
		
	@Override
	public void onPageFinished(WebView view, String url) {
		super.onPageFinished(view, url);
	}
	
}

E no método onCreate:

WebView webView = (WebView) view.findViewById(R.id.webViewPrimefaces);
webView.setWebViewClient(new ClientWeb());
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("seuEndereço");

E no arquivo de manifesto, adicione a permissão para acesso a internet:

<uses-permission android:name="android.permission.INTERNET" />

Pessoal acho que nao fui bem especifico e peço desculpas

Eu quero abrir um arquivo HTML

nao seria uma pagina o arquivo vai ficar fisico

Essa página está salva no cartão de memória como arquivo HTML?
Se for isso, acredito que passando o caminho do HTML para o método loadUrl irá funcionar:

File file = new File(Environment.getExternalStorageDirectory().toString() + "/arquivo.html");
webView.loadUrl(file.getName());

Entao …

Eu vou colocar o arquivo na pasta assents ou na res/drawlabel

Talvez isso deva funcionar:

Uri.fromFile(new File("file:///android_asset/arquivo.html"));

Nao deu certo ele nao exibe o arquivo

[code] public class ExibeHtml extends Activity{

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_primeiro);
        
        Uri.fromFile(new File("file:///android_asset/informatica.html"));  
 }

[/code]

Tente utilizar o método getPath() da classe Uri para pegar o caminho do arquivo e setar no método loadUrl() da WebView:

Uri uri = Uri.fromFile(new File("file:///android_asset/arquivo.html"));
webView.loadUrl(uri.getPath());

Esta pedindo pra criar o metodo “loadUrl”

[code]public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_primeiro);

        Uri uri = Uri.fromFile(new File("file:///android_asset/arquivo.html"));  
        WebView webView.loadUrl(uri.getPath());  
 }

[/code]

seu WebView deve receber o id do seu componente lá no xml…
Digamos que você declarou seu WebView no xml e deu o seguinte id: “android:id=”@+id/webView"", a sua Activity deve ser assim:

//setando o layout
setContentView(R.layout.seu_layout);
WebView webView = (WebView) findViewById(R.id.webView);

Agora sim, use o método loadUrl():

webView.loadUrl(url);

Antes de mais nada muito obrigado pela ajuda

Agora chama a web mais nao acha o arquivo:
file:///android_asset/arquivo.html

emq ue pasta do projeto posso coloca-lo e como chamar o caminho

Acho que ficaria melhor se você colocasse esse arquivo no cartão de memória e tentar acessá-lo pela classe Environment que te disse antes…
Você pode criar uma máquina virtual com 10 MB de cartão de memória por exemplo, e adicionar o arquivo .html pelo File Explorer, que se encontra na perspectiva DDMS do Eclipse.
Ou se você estiver testando sua aplicação em um dispositivo real, pode armazenar o arquivo .html no cartão e testar.

Para leitura/gravação de arquivos no cartão de memória, você tem que adicionar a seguinte permissão no arquivo de manifesto:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

:wink:

Entao cara mais tbm acho melhor mais como não sao muitos
Eu ia colocar no assets e chama-lo
vc sabe o caminho?

Nesse caso, aí vai um chute:

File file = new File("file:///android_assets/arquivo.html");
webView.loadUrl(file.getName());

Se isso não funcionar, infelizmente não saberei como ajudá-lo. :frowning:

Eh nao funcionou mesmo

MAis obrigado pelas dicas vou continuar procurando