2016-04-06 6 views
-1

Ich bin neu in der Android-Entwicklung und versuche, eine App zu erstellen, mit der sich jemand anmelden und eine Google Map später anzeigen kann. Die App scheint auf dem Android Studio ADB-Emulator zu funktionieren, aber ich bin mir nicht ganz sicher, weil du keine Google Map auf dem Emulator anzeigen kannst. Aber wenn ich die App auf meinem Samsung S3 installiere, stürzt es ab, nachdem ich mich angemeldet habe. HierAnmeldung und Anzeige einer Karte funktioniert auf Emulator aber stürzt auf Telefon

ist der Code für das Login (Ich bin mit Feuerbasis):

@Override protected void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState);

setContentView(R.layout.activity_login); 
    // Set up the login form. 


    mEmailView = (AutoCompleteTextView) findViewById(R.id.email); 
    populateAutoComplete(); 

    mPasswordView = (EditText) findViewById(R.id.password); 
    mPasswordView.setOnEditorActionListener(new TextView.OnEditorActionListener() { 
     @Override 
     public boolean onEditorAction(TextView textView, int id, KeyEvent keyEvent) { 
      if (id == R.id.login || id == EditorInfo.IME_NULL) { 
       attemptLogin(); 
       return true; 
      } 
      return false; 
     } 
    }); 

    Button mEmailSignInButton = (Button) findViewById(R.id.email_sign_in_button); 
    mEmailSignInButton.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      attemptLogin(); 
     } 
    }); 

    mLoginFormView = findViewById(R.id.login_form); 
    mProgressView = findViewById(R.id.login_progress); 
    Firebase.setAndroidContext(this); 
} 

private void registerUser(String email, String password) { 
    Firebase mFirebaseRef = new Firebase("https://shining-fire-3472.firebaseio.com/users/"); 
    User newuser = new User(email, password); 

    mFirebaseRef.push().setValue(newuser); 

    Intent intent = new Intent(LoginActivity.this, LogedIn.class); 
    //intent.putExtra("passingEmail", newuser.getEmail()); 
    //intent.putExtra("passingPass", newuser.getPassword()); 
    startActivity(intent); 

private void signInUser(String email, String password) { 
    //boolean varifyingEmail = varifyEmail(email); 
    //if (varifyingEmail == true) { 
    Firebase ref = new Firebase("https://shining-fire-3472.firebaseio.com/users/"); 
    Query queryRef = ref.orderByChild("email").equalTo(email); 

    queryRef.addListenerForSingleValueEvent(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for (DataSnapshot userSnapshot : dataSnapshot.getChildren()) { 
       User user = userSnapshot.getValue(User.class); 


       Intent intent = new Intent(LoginActivity.this, LogedIn.class); 
       //intent.putExtra("passingEmail", user.getEmail()); 
       //intent.putExtra("passingPass", user.getPassword()); 
       startActivity(intent); 
      } 
     } 

ich ein Fragment der Karte bin mit der Karte in einer XML-Datei anzuzeigen:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools"   
android:layout_width="match_parent" 
android:layout_height="match_parent"  
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
tools:context="ca.maciorowski.maciorowski.railapp.LogedIn"> 


<fragment 
    android:name="com.google.android.gms.maps.MapFragment" 
    android:id="@+id/map" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"/> 
</RelativeLayout> 

Dies ist logcat:

04-06 13:43:57.394 20243-20983/ca.maciorowski.maciorowski.railapp E/RunLoop: Uncaught exception in Firebase runloop (2.5.0). Please report to [email protected] 

java.lang.VerifyError: com/shaded/fasterxml/jackson/databind/ObjectMapper 
                      at com.firebase.client.utilities.encoding.JsonHelpers.<clinit>(JsonHelpers.java:7) 
                      at com.firebase.client.realtime.WebsocketConnection.<init>(WebsocketConnection.java:151) 
                      at com.firebase.client.realtime.Connection.<init>(Connection.java:66) 
                      at com.firebase.client.core.PersistentConnection.establishConnection(PersistentConnection.java:300) 
                      at com.firebase.client.core.Repo.deferredInitialization(Repo.java:82) 
                      at com.firebase.client.core.Repo.access$000(Repo.java:21) 
                      at com.firebase.client.core.Repo$1.run(Repo.java:71) 
                      at com.firebase.client.utilities.DefaultRunLoop$1.run(DefaultRunLoop.java:54) 
                      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:390) 
                      at java.util.concurrent.FutureTask.run(FutureTask.java:234) 
                      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:153) 
                      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:267) 
                      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080) 
                      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573) 
                      at java.lang.Thread.run(Thread.java:841) 
04-06 13:43:57.399 20243-20243/ca.maciorowski.maciorowski.railapp E/AndroidRuntime: FATAL EXCEPTION: main 
                       java.lang.VerifyError: com/shaded/fasterxml/jackson/databind/ObjectMapper 
                        at com.firebase.client.core.view.QueryParams.<clinit>(QueryParams.java:36) 
                        at com.firebase.client.Firebase.<init>(Firebase.java:172) 
                        at com.firebase.client.Firebase.<init>(Firebase.java:177) 
                        at com.firebase.client.Firebase.<init>(Firebase.java:155) 
                        at ca.maciorowski.maciorowski.railapp.LoginActivity.signInUser(LoginActivity.java:225) 
                        at ca.maciorowski.maciorowski.railapp.LoginActivity.attemptLogin(LoginActivity.java:203) 
                        at ca.maciorowski.maciorowski.railapp.LoginActivity.access$000(LoginActivity.java:45) 
                        at ca.maciorowski.maciorowski.railapp.LoginActivity$2.onClick(LoginActivity.java:99) 
                        at android.view.View.performClick(View.java:4475) 
                        at android.view.View$PerformClick.run(View.java:18786) 
                        at android.os.Handler.handleCallback(Handler.java:730) 
                        at android.os.Handler.dispatchMessage(Handler.java:92) 
                        at android.os.Looper.loop(Looper.java:137) 
                        at android.app.ActivityThread.main(ActivityThread.java:5419) 
                        at java.lang.reflect.Method.invokeNative(Native Method) 
                        at java.lang.reflect.Method.invoke(Method.java:525) 
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1209) 
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1025) 
                        at dalvik.system.NativeStart.main(Native Method) 
+2

Wow, das ist eine Menge Code. Können Sie ein kleines reproduzierbares Beispiel des Problems posten? – JAL

+0

Entschuldigung. Ist es jetzt besser? Ich denke, dass viel Code von Android Studio generiert wurde, da ich eine Login-Aktivität verwendet habe. – sk9r

Antwort

0

ich das Problem gefunden, schaltet sich mein Projekt aus API ist zu hoch für mein Telefon. Die App funktionierte, als ich es auf einem neueren Gerät versuchte

Verwandte Themen