Skocz do zawartości

Znajdź zawartość

Wyświetlanie wyników dla tagów 'webview' .



Więcej opcji wyszukiwania

  • Wyszukaj za pomocą tagów

    Wpisz tagi, oddzielając je przecinkami.
  • Wyszukaj przy użyciu nazwy użytkownika

Typ zawartości


Forum

  • Społeczność android.com.pl
    • Regulaminy Forum
    • Przywitaj się!
    • Android.com.pl
    • Konkursy
    • OFF-Topic
  • Android
    • Nowości i plotki
    • FAQ Android
    • Android 10
    • Android 9.0 Pie
    • Android 8.0 Oreo
    • Android 7.0 Nougat
    • Android 6.0 Marshmallow
    • Android 5.0 Lollipop
    • Android 4.4 KitKat
    • Archiwum Android
    • Software PC
  • Gry i Aplikacje
    • Aplikacje Android
    • Gry Android
    • Poszukiwania gier i aplikacji
    • Porównania gier i aplikacji
    • Android Wear - Smartwatch
    • Modyfikacje Wizualne
    • Download
    • Multimedia
  • Co i gdzie kupić?
  • Programowanie
  • Modyfikacje Android OS
  • Elektronika
  • Honor
  • Google
  • HTC
  • LG
  • Samsung
  • Sony
  • Motorola
  • Huawei
  • Xiaomi / MIUI
  • OnePlus
  • Lenovo
  • Asus
  • myPhone
  • Pozostałe marki

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Od tej daty

    Do tej daty


Ostatnia aktualizacja

  • Od tej daty

    Do tej daty


Filtruj po ilości...

Znaleziono 11 wyników

  1. Witam zostałem poproszony o przeniesienie do innego wątku, bo poruszałem za dużo kwestii, więc tak też uczyniłem Chodzi o to, że piszę aplikację, która otwiera za pomocą WebView pewną stronę i raz na 24h muszę coś na tej stronie obejrzeć i wszystko ok mam automatyczne logowanie, alarm i wakelock, który wybudza apke kiedy trzeba i ogląda/klika to co trzeba, problem w tym, że aplikacja musi być zalogowana, żeby to obejrzeć, ale nie wiem jak sprawdzić to przez webview....... Do logowania używam jednej klasy, którą podałem niżej a do oglądania/klikania wykorzystuje bardzo podobne jak to niżej, tylko, że Activity z tą różnicą, że jest inny webView.loadUrl("podstrona na której klikam reklamy"); i inny String JS ze skryptem, który to klika Przykład podaje oparty o Fragment mam też na Activity (tą samą klase), ale sam nie wiem czego powinienem używać do WebView, Activity czy Fragmetów? (o to też pytałem w jednym temacie i też miałem przenieść do innego wątku ) public class AdBlastFragment extends Fragment { SharedPreferences sharedPreferences; ProgressDialog pd = null; ProgressBar progressBar = null; private SwipeRefreshLayout swipe; private WebView webView; // private NestedWebView webView; public static final String MyPREFERENCES = "AdBlast"; private String login; private String password; private long myTime = 1551315630000L; Date currentTime = Calendar.getInstance().getTime(); Alarmmanager am = new Alarmmanager(); @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { PowerManager pm = (PowerManager) getActivity().getSystemService(Context.POWER_SERVICE); PowerManager.WakeLock wakeLock = pm.newWakeLock((PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP), "T:AG"); wakeLock.acquire(); getActivity().getWindow().addFlags( WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); final View view = inflater.inflate(R.layout.website, container, false); sharedPreferences = getActivity().getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE); login = sharedPreferences.getString(this.getString(R.string.keyLogin), ""); password = sharedPreferences.getString(this.getString(R.string.keyPassword), ""); swipe = (SwipeRefreshLayout) view.findViewById(R.id.swpie); swipe.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { LoadWeb(view); } }); LoadWeb(view); wakeLock.release(); return view; } public void LoadWeb(View view) { webView = (WebView) view.findViewById(R.id.website); WebSettings webSettings = webView.getSettings(); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH); // webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); webView.getSettings().setAppCacheEnabled(true); webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); webSettings.setDomStorageEnabled(true); webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS); webSettings.setUseWideViewPort(true); webSettings.setSavePassword(true); webSettings.setSaveFormData(true); webSettings.setEnableSmoothTransition(true); swipe.setRefreshing(true); webView.loadUrl("https://adblast.alternet.com/auth"); final String js = "javascript:document.querySelector('input[name=email]').value='" + login + "';" + "document.querySelector('input[name=password]').value='" + password + "';" + "document.getElementById('submit').click()"; webView.setWebViewClient(new WebViewClient() { // @Override // public boolean shouldOverrideUrlLoading(WebView view, String url) { // if (Uri.parse(url).getHost().equals("https://adblast.alternet.com/home")) { // //open url contents in webview // return false; // } else { // //here open external links in external browser or app // Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); // startActivity(intent); //// //// Intent intent = new Intent(Intent.ACTION_VIEW, AdBlastFragment.class); // Uri.parse(url) //// startActivity(intent); // //// FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction(); //// fragmentTransaction.addToBackStack("tag of fragment"); // dzięki temu działa onBackPressed() //// fragmentTransaction.replace(R.id.content_frame, new AdBlastFragment()); //// fragmentTransaction.commit(); // return true; // } // } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { Log.d("XXXXXXXXXXXXXXXXX", "your current url when webpage loading.." + url); pd = new ProgressDialog(getActivity()); pd.setTitle("Please Wait.."); pd.setIcon(R.drawable.ad); // pd.setProgressStyle(1); pd.setMessage("Website is Loading.."); pd.show(); super.onPageStarted(view, url, favicon); } @Override public void onPageFinished(WebView view, String url) { Log.d("YYYYYYYYYYYYYYYYYY", "your current url when webpage loading.. finish" + url); pd.dismiss(); if (Build.VERSION.SDK_INT >= 19 && !login.isEmpty() && !password.isEmpty()) { view.evaluateJavascript(js, new ValueCallback<String>() { @Override public void onReceiveValue(String s) { } }); } swipe.setRefreshing(false); } }); webView.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int newProgress) { ((MainActivity) getActivity()).setActionBarTitleAndIcon("Page loading : " + newProgress + "%", 0); if (newProgress == 100) { ((MainActivity) getActivity()).setActionBarTitleAndIcon(view.getTitle(), 0); } } }); } } Próbowałem tego a dokładnie Cookiemanager.getinstance().getcookie(url) ale nie ważne czy jestem wylogowany czy zalogowany, pobiera dokładnie to samo. W sumie to nie wiem nawet co powinno być pobrane, ale sprawdziłem to sobie za pomocą Log.d( tutaj dałem to getcookie(url) ), ale pobierało dokładnie to samo Rozumiem, że chodzi o zastosowanie metod... shouldOverrideUrlLoading, onPageStarted i onPageFinished tylko nie do końca wiem jeszcze jak to działa używam tylko onPageFinished i też przy pomocy Log.d() sprawdziłem sobie co jest pod tym URL w metodzie public void onPageFinished(WebView view, String url) Log.d("URL: " + url); i faktycznie tu jest url, który mógłbym użyć np w jakiejś instrukcji warunkowej, ale to jest w metodzie a ja bym potrzebował tego wcześniej, przed metodą i nie bardzo wiem jak to rozwiązać  MAM NADZIEJĘ, ŻE TO CO NAPISAŁEM WYŻEJ JEST ZROZUMIAŁE W MIARĘ, BO JEST TYCH KLAS DUŻO WIĘCEJ I CIĘŻKO WRZUCIĆ TU CAŁY PROJEKT
  2. Witam. Piszę aplikację, w której wykorzystuję WebView do otwierania kilku stron www, ale do końca nie wiem czym się różni Activity od Fragment, większość przykładów na stackoverflow i ogólnie w necie jest pokazana na Activity, ale z tego co zauważyłem to nasze aplikacje w telefonach korzystają w większości przykładów z Fragmentów? I czy mogę użyć, albo czego powinienem użyć do wyświetlania stron, chodzi mi o WebView, normalnie wykorzystywałem, do tego Activity, ale jedną ze stron odpalam (to WebView) we Fragmencie i też działa, tylko mam czasami problem z TITLE który sam sobie ustawiam na pasku AppBar (Toolbar) i wywala mnie z apki przez to. Tak więc do WebView co jest bardziej wskazane Activity czy Fragmenty? Zauważyłem też, że np w activity jak odpalę jakąś stronę i zacznę coś na tej stronie robić, przejdę do jakiejś innej podstrony, to po naciśnięciu button back czyli wywołanie metody public void onBackPressed() cofa mnie tak jak powinno, czyli do poprzedniej podstrony, lub strony głównej, w Fragmencie tak niestety nie mam, cofa mnie do ostatniego widoku w aplikacji, dlatego też pytam kiedy i do czego jest bardziej wskazane Activity a do czego Fragmenty, jak prawidłowo z tego korzystać itd ??? Dodam kod Fragmentu z WebView może się przyda public class AdBlastFragment extends Fragment { SharedPreferences sharedPreferences; ProgressDialog pd = null; ProgressBar progressBar = null; private SwipeRefreshLayout swipe; private WebView webView; // private NestedWebView webView; public static final String MyPREFERENCES = "AdBlast"; private String login; private String password; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { PowerManager pm = (PowerManager) getActivity().getSystemService(Context.POWER_SERVICE); PowerManager.WakeLock wakeLock = pm.newWakeLock((PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP), "T:AG"); wakeLock.acquire(); getActivity().getWindow().addFlags( WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); final View view = inflater.inflate(R.layout.website, container, false); sharedPreferences = getActivity().getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE); login = sharedPreferences.getString(this.getString(R.string.keyLogin), ""); password = sharedPreferences.getString(this.getString(R.string.keyPassword), ""); swipe = (SwipeRefreshLayout) view.findViewById(R.id.swpie); swipe.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { LoadWeb(view); } }); LoadWeb(view); wakeLock.release(); return view; } public void LoadWeb(View view) { webView = (WebView) view.findViewById(R.id.website); WebSettings webSettings = webView.getSettings(); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH); // webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); webView.getSettings().setAppCacheEnabled(true); webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); webSettings.setDomStorageEnabled(true); webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS); webSettings.setUseWideViewPort(true); webSettings.setSavePassword(true); webSettings.setSaveFormData(true); webSettings.setEnableSmoothTransition(true); swipe.setRefreshing(true); webView.loadUrl("https://adblast.alternet.com/auth"); final String js = "javascript:document.querySelector('input[name=email]').value='" + login + "';" + "document.querySelector('input[name=password]').value='" + password + "';" + "document.getElementById('submit').click()"; webView.setWebViewClient(new WebViewClient() { // @Override // public boolean shouldOverrideUrlLoading(WebView view, String url) { // if (Uri.parse(url).getHost().equals("https://adblast.alternet.com/home")) { // //open url contents in webview // return false; // } else { // //here open external links in external browser or app // Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); // startActivity(intent); //// //// Intent intent = new Intent(Intent.ACTION_VIEW, AdBlastFragment.class); // Uri.parse(url) //// startActivity(intent); // //// FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction(); //// fragmentTransaction.addToBackStack("tag of fragment"); // dzięki temu działa onBackPressed() //// fragmentTransaction.replace(R.id.content_frame, new AdBlastFragment()); //// fragmentTransaction.commit(); // return true; // } // } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { Log.d("XXXXXXXXXXXXXXXXX", "your current url when webpage loading.." + url); pd = new ProgressDialog(getActivity()); pd.setTitle("Please Wait.."); pd.setIcon(R.drawable.ad); // pd.setProgressStyle(1); pd.setMessage("Website is Loading.."); pd.show(); super.onPageStarted(view, url, favicon); } @Override public void onPageFinished(WebView view, String url) { Log.d("YYYYYYYYYYYYYYYYYY", "your current url when webpage loading.. finish" + url); pd.dismiss(); if (Build.VERSION.SDK_INT >= 19 && !login.isEmpty() && !password.isEmpty()) { view.evaluateJavascript(js, new ValueCallback<String>() { @Override public void onReceiveValue(String s) { } }); } swipe.setRefreshing(false); } }); webView.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int newProgress) { ((MainActivity) getActivity()).setActionBarTitleAndIcon("Page loading : " + newProgress + "%", 0); if (newProgress == 100) { ((MainActivity) getActivity()).setActionBarTitleAndIcon(view.getTitle(), 0); } } }); } } I jeszcze jedno małe pytanie czy jest możliwość, żeby SWIPE po odświeżeniu nie cofało mnie do strony głównej, tylko odświeżyło tą stronę/podstronę gdzie się aktualnie znajduję?
  3. adyoi

    Android Webview Starter (Kotlin)

    Android Webview Starter Android Webview Starter v 1.0 Permission to copy source code is only permitted for Education Features : Splash Screen Javascript Interface Function Callback Back Press Confirmation sourcecode: https://github.com/adyoi/Android-Webview-Starter
  4. Hej, mam pewien problem. Mam listę wpisów z forum (nazwa użytkownika, data, treść). Treść wczytywana jest jako html (na forum używany bbcode i jsonem przesyłam sparsowany tekst do html'a). Chciałbym zrobić coś takiego aby po wejściu przewijało mnie do ostatniego wpisu. Próbowałem czegoś takiego: mList.postDelayed(new Runnable() { @Override public void run() { mList.setSelection(lastElementIndex); } }, 500); // i też czegoś takiego mList.setItemChecked(lastElementIndex, true); niestety żadne rozwiązanie nie działa, wszystko przez webview... Da się to jakoś obejść aby pomimo wczytywania html'a przewinęło na sam dół listy? (coś ala zawsze trzymaj się dołu listy?) Dzięki za pomoc
  5. Witam, mam aplikację na telefon która czyta RSS z danej strony, i po kliknięciu w tytuł RSS z listyView przenosi do nowej aktywności gdzie w webView pokazuje stronę z artykułem. Jednak chciał bym aby pokazywało w tym webView ( ewentualnie w textView ale nie wiem czy to nie będzie trudniejsze ) treść Newsa i ewentualnie tytuł ... Konkretnie! po otwarciu url'a mam taki widok : http://imgur.com/Dq3fbxS A chciał bym taki widok : http://imgur.com/FxHPJBE Orientuje się ktoś jak to zrobić ? ewentualnie jakieś inne techniki ( nie za pomocą webView) ? zeby uzyskać podobny wygląd. Chętnie przygarnę tutoriale na ten temat.
  6. Napisałem program w którym na 1 layoucie startowym wyświetla się strona internetowa w komponencie WebView. Ale chciałbym zrobić tak żeby jak ktoś nie ma włączonego dostępu do internetu, żeby mu braku tej strony nie wyświetlało, tylko w komponencie WebView wczytał jakiś napis. Bo teraz się pokazuje że strona jest niedostępna i błąd ERR_NAME_NOT_RESOLVED. Chcę żeby tego błędu nie było jak ktoś ma wyłączony internet. mWebView = (WebView)findViewById(R.id.webView1); mWebView.loadUrl("http://stronawww.pl/a.html"); mWebView.setWebViewClient(new WebViewClient() { public boolean shouldOverrideUrlLoading(WebView webview, String s) { webview.loadUrl(s); return true; } });
  7. Pisząc hybrydową aplikacje na Androida, konkretnie na Cordovie, dobrze jest uwzględnić taki twór jak Pixel Ratio. Tym samym, jeżeli mamy grafikę 100px i przygotowywaliśmy ją na podstawie Pixel Ratio wynoszącego 1.0, to kolejno dla Pixel Ratio: 0.75, 1.0, 1.5, 2.0 powinna to być grafika 75px, 100px, 150px i 200 px. Większa rozdzielczość na tym samym ekranie da większe zagęszczenie pikseli i jeżeli będzie to odpowiednio większa rozdzielczość, to załapiemy się na wyższe Pixel Ratio co pozwoli wyświetlić także większe grafiki na takowym ekranie. Co jednak się stanie, jeżeli mamy tą samą rozdzielczość ekranu, jednak jeden ekran jest 2x większy od drugiego? Wtedy ten większy ekran będzie mieć zdecydowanie mniejsze DPI/PPI, co przełoży się na dużo mniejsze Pixel Ratio i w efekcie na 2x większym ekranie dostaniemy mniejsze elementy, niż dostalibyśmy je na tym 2x mniejszym ekranie o takiej samej rozdzielczości. Mamy dwa urządzenia: 208 DPI - Microsoft Surface Pro 2, 10.6 cali, 1920x1080 (można dać tu dowolny tablet o takiej rozdzielczości i wielkości) 445 DPI - Google Nexus 5, 5 cali, 1920x1080 Pierwszy ma 2x większy ekran, a przez to, że taką samą rozdzielczość, ma także 2x mniejsze DPI. Google w "poradniku" programowania pod WebView, a więc Cordovie, pisze o tym, aby uzależniać wyświetlaną grafikę właśnie od DPI, a konkretnie od wynikającego z niego Pixel Ratio. W uproszczeniu: im większe DPI, tym większe Pixel Ratio i co za tym idzie, grafika wyświetlana na ekranie także ma być większa. Tylko co w sytuacji jak wyżej? Na 2x większym ekranie o takiej samej rozdzielczości zostanie wyświetlona mniejsza grafika z powodu mniejszego DPI? Dobrze myślę? Mam nadzieję, że źle.
  8. kapuscianyglab

    Wyświetlanie dużych stron w WebView?

    Witam Mam problem dotyczący wyświetlania dużych stron. Jak zrobić żeby mozna było przewijac stronę również na boki, a nie tylko z góry na dół? Czy po uruchomieniu webview android automatycznie uruchamia mobilna wersję strony? pozdrawiam
  9. Freeman

    WebView - problem.

    Oto mój kod: package com.test.browsertest; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.webkit.WebView; import android.widget.Button; import android.widget.EditText; public class BrowserTest extends Activity{ /** Called when the activity is first created. */ private WebView browser; private EditText adressline; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //Finding View for buttons etc. adressline = (EditText)findViewById(R.id.adress); Button go = (Button)findViewById(R.id.enter); browser = (WebView)findViewById(R.id.browser); Button stop = (Button)findViewById(R.id.stop); Button clear = (Button)findViewById(R.id.clear); //Action for clicking button go go.setOnClickListener(new OnClickListener() { public void onClick(View v){ openBrowser(); } private void openBrowser() { browser.getSettings().setJavaScriptEnabled(true); browser.loadUrl(adressline.getText().toString()); } }); //Action for clicking button stop stop.setOnClickListener(new OnClickListener() { public void onClick(View v){ browser.stopLoading(); } }); clear.setOnClickListener(new OnClickListener() { public void onClick(View v){ adressline.setText("http://"); } }); } } Powinno wyświetlać stronę w WebView pod przyciskami, a mimo to i tak otwiera zewnętrzną przeglądarkę i tam otwiera stronę. Ktoś wie dlaczego? Tutaj jest plik main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" > <EditText android:id="@+id/adress" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="1.0" android:singleLine="true" android:text="http://" /> <Button android:id="@+id/stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/x" /> <Button android:id="@+id/clear" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/clear" /> <Button android:id="@+id/enter" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/enter" /> </LinearLayout> <WebView android:id="@+id/browser" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" /> </LinearLayout> Dodam, że w manifeście zadeklarowałem korzystanie z internetu.
  10. Calypso

    webView

    Witam, Mam pytanie: Jak mozna wyświetlic zamiast całej strony www np tylko srodkową jjej czesc strony (no albo jakis obrazek tylko ze stronki url)słyszałem cos o auto zooming zeby wyswietlało tylko pozadana zcesc strony www ale nic nie moge znalesc w sieci co by mi pomogło. Pozdrawiam.
  11. Witam, Pisząc aplikację natknąłem się na pewien problem. W mojej aplikacji w WebView wyświetlane są obrazki. Problem polega na tym, że niektóre linki do stron na których jest obrazek np: Link same przekierowują mnie na inną stronę (ale nie zawsze) tzn. taką która nie zawiera jedynie tego obrazka a jeszcze inną treść i tutaj pojawia się problem bo próbując wczytać takie coś: String data = "<html><body><img src="link" /></body></html>"; WebView.loadData(data, "text/html", "utf-8"); nie wyświetla się ten obrazek a mały znak zapytania. Wiem co jest przyczyną, ale nie za bardzo wiem jak to naprawić. Czy jest jakaś możliwość, aby WebView wyświetlał podany link bez wczytywania strony, którą dostaje po przekierowaniu. Proszę o pomoc.
x