2016-12-28 6 views
-2

Пожалуйста, прочитайте мой вопрос первогоКак открыть URL в андроиде

Я хочу, чтобы открыть URL в моем приложении не в браузере телефона.

В Facebook или Twitter вы можете увидеть, как они открывают ссылку в своем собственном приложении.

Это будет перенаправлять браузер на мой телефон

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com")); 
startActivity(browserIntent); 

, но я хочу, чтобы открыть URL, как Facebook App.

Есть ли какой-либо конкретный API для такого вида просмотра.

+0

@ Delta7 Вы уверены, что Facebook использует Webview? –

+0

[webview] (https://developer.android.com/reference/android/webkit/WebView.html) –

+0

нет, они сделали полное приложение –

ответ

2

Я думаю, вы хотите использовать Chrome Custom Tabs, проверьте ссылку!

Здесь основной пример с сайта

// Use a CustomTabsIntent.Builder to configure CustomTabsIntent. 
// Once ready, call CustomTabsIntent.Builder.build() to create a CustomTabsIntent 
// and launch the desired Url with CustomTabsIntent.launchUrl() 

String url = ¨https://paul.kinlan.me/¨; 
CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder(); 
CustomTabsIntent customTabsIntent = builder.build(); 
customTabsIntent.launchUrl(this, Uri.parse(url)); 
+0

Привет, appersiano, класс CustomTabsIntent не найден здесь. Есть ли библиотека для CustomTabsIntent. –

+0

да, конечно, ознакомьтесь с руководством по внедрению по ссылке, вы можете увидеть степень градиента – appersiano

+0

Великий мужчина, я ищу то же самое. Есть ли способ дать вам 100 голосов. Спасибо :) –

1

Следующий код поможет вам открыть URL в приложении:

import android.app.Activity; 
import android.os.Bundle; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 
import android.widget.Toast; 

public class AppWebViewActivity extends Activity { 

    private WebView mWebview; 
    private String mWebViewUrl; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 

     super.onCreate(savedInstanceState); 

     mWebview = new WebView(this); 
     mWebViewUrl= getIntent().getStringExtra("web_view_url"); 

     mWebview.getSettings().setJavaScriptEnabled(true); // enable javascript 

     final Activity activity = this; 

     mWebview.setWebViewClient(new WebViewClient() { 
      public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
       Toast.makeText(activity, description, Toast.LENGTH_SHORT).show(); 
      } 
     }); 

     mWebview .loadUrl(mWebViewUrl); 
     setContentView(mWebview); 

    } 

} 

Define выше активность в манифесте, как это:

<activity 
     android:name="<package-name>.AppWebViewActivity " 
     android:screenOrientation="portrait" > 
    </activity> 

И также добавить разрешение на Интернет:

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

И назвать эту деятельность только следуют ниже код:

Intent intent = new Intent(getBaseContext(), AppWebViewActivity .class); 
intent.putExtra("web_view_url", "your-complete-url"); 
startActivity(intent) 

Вы можете иметь пользовательский интерфейс в этом случае вы должны определить WebView в XML и взять ссылку на макете в вашей Webview деятельности.

Happy Coding !!!!

+0

Спасибо за ваше время, но Webview не является моим решением. –

1

вы можете открыть URL в ваших шагов приложения через WebView ниже:

XML код ниже для WebView;

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context="com.whiskey.servicedog.DocumentPlay" 
    tools:showIn="@layout/activity_document_play"> 

    <WebView 
     android:id="@+id/webView" 
     android:layout_width="match_parent" 
     android:layout_height="fill_parent" 
     android:layout_alignParentTop="true"> 

    </WebView> 

</RelativeLayout> 

следующий код Java файл ниже:

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_document_play); 

     webView = (WebView) findViewById(R.id.webView); 

     webView.getSettings().setJavaScriptEnabled(true); 
     webView.getSettings().setBuiltInZoomControls(true); 
     webView.loadUrl(urlpath); 
    } 

надеюсь, что это помогает вам

+0

Спасибо за ваше время, но Webview не является моим решением. –

+0

добро пожаловать ... –

-1

добавить WebView активность/фрагмент, и веб-сайт выставки в WebView.

Смежные вопросы