HTML login form works in Android browser and fails with WebView ?

by Derek » Mon, 02 Mar 2009 04:03:47 GMT


Sponsored Links
 Hi all,

I'm facing the following problem. I'm opening Flickr HTML login form
with default Android browser and everything works fine when I'm
logging (click "sign in" button in HTML form):
 String url = " http://m.flickr.com/" ;;
 Intent intent = new Intent();
 intent.setAction(Intent.ACTION_VIEW);
 intent.setData(Uri.parse(url));
 startActivity(intent);

But "sign in" button does nothing when using the same in a WebView:
String url = " http://m.flickr.com/" ;;
 WebView webview = (WebView) findViewById(R.id.flickr_authwebview);
 webview.getSettings().setJavaScriptEnabled(true);
 webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
 webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
 webview.getSettings().setLoadsImagesAutomatically(false);
 webview.setClickable(true);
 webview.loadUrl(url);

What could be the problem ?
--~--~---------~--~----~------------~-------~--~----~



HTML login form works in Android browser and fails with WebView ?

by Derek » Mon, 02 Mar 2009 04:08:27 GMT


 To get the login form, use:
String url = " http://m.flickr.com/signin/" ;;



--~--~---------~--~----~------------~-------~--~----~


Sponsored Links


HTML login form works in Android browser and fails with WebView ?

by Derek » Mon, 02 Mar 2009 23:14:29 GMT


 Anyone ?
Even simple links are not followed.





--~--~---------~--~----~------------~-------~--~----~



HTML login form works in Android browser and fails with WebView ?

by Miguel Paraz » Tue, 03 Mar 2009 18:13:20 GMT


 





Hi,
WebView requires that your manifest has:
<uses-permission android:name="android.permission.INTERNET"></uses-
permission>


--~--~---------~--~----~------------~-------~--~----~



HTML login form works in Android browser and fails with WebView ?

by Derek » Wed, 04 Mar 2009 04:49:49 GMT


 eah, thanks ! I was using layout_weight="1.0". I've removed it and
now the links are working. However, the login form still doesn't work
as in Android browser.
When I look to the source it seems very simple (No JavaScript). Some
form fields are hidden and empty. Could it be the problem ?

Here is my XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/
android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/flickr_authwebview_title_label"
android:layout_marginBottom="6px"/>

<LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center">

<Button android:id="@+id/flickr_authwebview_button_ok"
android:text="@string/flickr_authwebview_ok_button"
android:layout_marginRight="10px"
android:layout_marginTop="6px"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

<Button android:id="@+id/flickr_authwebview_button_cancel"
android:text="@string/flickr_authwebview_cancel_button"
android:layout_marginLeft="10px"
android:layout_marginTop="6px"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

</LinearLayout>

<WebView
android:id="@+id/flickr_authwebview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

</LinearLayout>

and my code:
String url = "http://m.flickr.com/signin/";
WebView webview = (WebView) findViewById(R.id.flickr_authwebview);
webview.setWebViewClient(new AuthWebViewClient());
webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
webview.loadUrl(url);
webview.setClickable(true);
webview.requestFocus();


private class AuthWebViewClient extends WebViewClient
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String
url)
{
view.loadUrl(url);
return true;
}
}

Thanks for any help.


On Mar 3, 11:40am, for android <forandr...@gmail.com> wrote:
--~--~---------~--~----~------------~-------~--~----~



HTML login form works in Android browser and fails with WebView ?

by Derek » Wed, 04 Mar 2009 19:14:54 GMT


 hanks but the problem is still here. However, If i remove:
webview.setWebViewClient(new AuthWebViewClient());
then I notice that with setSupportMultipleWindows(true); it opens a
new Android browser windows when I click to "Submit" button but the
page displayed is not the correct one. I'm wondering if Flickr is able
to check that the HTML is loaded into a WebView or a real browser (as
for in iFrame). I don't see how because there is no JavaScript in the
HTML.

Any other suggestions ?


On Mar 4, 8:30am, for android <forandr...@gmail.com> wrote:
--~--~---------~--~----~------------~-------~--~----~



HTML login form works in Android browser and fails with WebView ?

by Derek » Thu, 05 Mar 2009 06:02:55 GMT


 es, that's I did in the code I've posted before. I don't see the
difference ?
Could this issue come from Cookie management in WebView ? Is there any
option to make sure cookies are passed ?

Thanks.


On Mar 4, 12:34pm, for android <forandr...@gmail.com> wrote:
--~--~---------~--~----~------------~-------~--~----~



Other Threads

1. Crashed Service not restarting - !!! FAILED BINDER TRANSACTION !!! - Dianne could you help ?

You probably want to fix the cause of your service crashing, so...  what is
the actual stack crawl of the exception?  You don't show that anywhere.


















> > > > > > > > 

2. Will native libs built with the NDK work with the Nexus One?

Ciao Francois,

you will not be able to debug/step-into the native lib. The best thing
you could consider to add log-files to your native lib, and check the
logs if crashing.
JVM is slow, compared to C, but if your game is turn-based this is not
an issue - in this case i would recommend Java for all code.
If your game is real-time, than probably a good idea is to first start
with the presentations on this topic from Google:

- http://www.youtube.com/watch?v=U4Bk5rmIpic

- Chris Pruett is also doing a game, and he plans to release all
source code sometimes soon :) so a good idea is to check out his site
http://replicaisland.blogspot.com/2009/11/android-game-development-resources.html

- there are lots of 3rd party game-engines for android, but most of
them are basic, and you have to check out the licensing terms

- for some tutorials on using the NDK - you can also consider our
website - hope you find them useful
http://www.itwizard.ro/category/android-cc

Hope this helps.
Best regards








> debug purposes?

3. What happens if...

4. android emulator speed

5. Start new activity in TAB

6. MediaPlayer ... a nest of undocumented pitfalls

7. Looking for some reading on the Android Framework