2016-09-18 4 views
0

Zunächst möchte ich sagen, dass ich insgesamt Noob bin, wenn es um Android und Java Entwicklung geht, aber ich habe es geschafft, den folgenden Code ausführen und es lauches meine Website. Süss. HierAndroid App leerer Bildschirm nach Facebook Login auf WebView

ist der Code:

package se.madesolutions.cmok; 

import android.net.Uri; 
import android.os.Bundle; 
import android.support.design.widget.FloatingActionButton; 
import android.support.design.widget.Snackbar; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.View; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.webkit.WebSettings; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

import com.google.android.gms.appindexing.Action; 
import com.google.android.gms.appindexing.AppIndex; 
import com.google.android.gms.common.api.GoogleApiClient; 

public class MainActivity extends AppCompatActivity { 

/** 
* ATTENTION: This was auto-generated to implement the App Indexing API. 
* See https://g.co/AppIndexing/AndroidStudio for more information. 
*/ 
private GoogleApiClient client; 
private WebView mywebView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    mywebView = (WebView)findViewById(R.id.webView); 
    WebSettings webSettings = mywebView.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    mywebView.loadUrl("http://mywebsite.com"); 

    mywebView.setWebViewClient(new WebViewClient()); 


    //Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    //setSupportActionBar(toolbar); 

    // FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 

    // ATTENTION: This was auto-generated to implement the App Indexing API. 
    // See https://g.co/AppIndexing/AndroidStudio for more information. 
    client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build(); 
} 

@Override 
public void onBackPressed() { 
    if(mywebView.canGoBack()){ 
     mywebView.goBack(); 
    } else { 
     super.onBackPressed(); 
    } 

} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.menu_main, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 

    //noinspection SimplifiableIfStatement 
    if (id == R.id.action_settings) { 
     return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 

@Override 
public void onStart() { 
    super.onStart(); 

    // ATTENTION: This was auto-generated to implement the App Indexing API. 
    // See https://g.co/AppIndexing/AndroidStudio for more information. 
    client.connect(); 
    Action viewAction = Action.newAction(
      Action.TYPE_VIEW, // TODO: choose an action type. 
      "Main Page", // TODO: Define a title for the content shown. 
      // TODO: If you have web page content that matches this app activity's content, 
      // make sure this auto-generated web page URL is correct. 
      // Otherwise, set the URL to null. 
      Uri.parse("http://host/path"), 
      // TODO: Make sure this auto-generated app URL is correct. 
      Uri.parse("android-app://se.madesolutions.cmok/http/host/path") 
    ); 
    AppIndex.AppIndexApi.start(client, viewAction); 
} 

@Override 
public void onStop() { 
    super.onStop(); 

    // ATTENTION: This was auto-generated to implement the App Indexing API. 
    // See https://g.co/AppIndexing/AndroidStudio for more information. 
    Action viewAction = Action.newAction(
      Action.TYPE_VIEW, // TODO: choose an action type. 
      "Main Page", // TODO: Define a title for the content shown. 
      // TODO: If you have web page content that matches this app activity's content, 
      // make sure this auto-generated web page URL is correct. 
      // Otherwise, set the URL to null. 
      Uri.parse("http://host/path"), 
      // TODO: Make sure this auto-generated app URL is correct. 
      Uri.parse("android-app://se.madesolutions.cmok/http/host/path") 
    ); 
    AppIndex.AppIndexApi.end(client, viewAction); 
    client.disconnect(); 
} 
} 

Was ich getan habe ist, dass ich Facebook-Login auf meiner Website implementiert haben, wo Benutzer einfach anmelden können. Das funktioniert großartig, wenn ich auf dem Desktop-Computer teste, aber wenn ich versuche, mich über die Android-App anzumelden, die dieselbe Webseite startet, bekomme ich nach dem Login mit Facebook nur eine leere Webseite.

Hat jemand irgendwelche Ideen, wie man das löst? Alle Hilfe geschätzt.

Antwort

0
mywebView.setWebViewClient(new WebViewClient(){ 
      @Override 
      public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
       Toast.makeText(getContext(), description, Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onPageFinished(WebView view, String url) { 
       super.onPageFinished(view, url); 
       progressBar.setVisibility(View.GONE); 
      } 
     }); 
     mywebView.loadUrl("http://mywebsite.com"); 

Diese

+0

Hallo Knospe .. Ich habe gesamten Code nur writen Zusammenhang holen .. Könnten Sie Ihren Code in meine hinzufügen .. I nicht wissen, wo Sie Ihren Code einfügen .. sorry mate total noob hier :( – Mensur

+0

Sie möchten nur facebook.com über Webview in Ihrer Android App laden ?? oder Sie möchten Facebook Login über Ihre App implementieren ?? – Moulesh

+0

Nein im Laden meiner website durch android app ... auf meiner website habe ich einen knopf implementiert, um mich auf meiner webseite über facebook anwendung einzuloggen. also grundsätzlich kann ich die gleiche webseite über den webbrowser öffnen .. der login funktioniert super mit dem webbrowser aber wenn ich denselben login durch teste Android App ist nur leer – Mensur

0

hallo ich versuche gleiche Problem, und ich habe solved.This aufgrund passiert Ihr activity.May Ihnen einige Hintergrundinformationen mit schweren Bilder zum Laden verwendet.

auf diese Weise

Dieses Thema in Ihrer Manifest-Datei, die weißen Bildschirm Aktivität

android:theme="@android:style/Theme.Translucent.NoTitleBar" 

Dank Versuchen Sie, diese Hoffnung wird Ihnen helfen.

0

@mansur versuchen facebook SDKs, die sehr einfach einloggen und Daten von Facebook an den Benutzer

Verwandte Themen