0

Ich habe auf Android Studio 2.0 aktualisiert und eine App damit debuggt. Ich habe festgestellt, dass die Debug-App nicht mehr in herunterfahrbaren Apps im Menü aufgeführt ist und dachte, dass dies möglicherweise auf die neue Instant-Run-Funktion von Android Studio 2.0 zurückzuführen ist.App kann nach dem Update nicht gestartet werden, nur die Option wird deinstalliert

Dann habe ich eine signierte Version .apk generiert und in den Laden hochgeladen. Zwei Testgeräte haben das Update installiert, aber sie können die App nicht mehr starten. Es ist auch nicht in der genannten Menü aufgeführt und Google Play ist die einzige Option, die App zu "deinstallieren", gibt es keine Start-Taste.

Wo muss ich nach der Ursache für dieses Problem suchen und wie kann ich es beheben? Ich habe bereits meine AndroidManifest.xml die Tätigkeit als Haupt markieren:

<activity 
     android:name=".activities.LoginActivity" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme.NoActionBar"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 

      <action android:name="android.intent.action.VIEW" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 

      <data android:scheme="myapp" /> 
     </intent-filter> 
    </activity> 
+0

wenn Ihr apk Release zu aktualisieren, können Sie die Versionscode aktualisiert und was auch immer Sie aktualisieren müssen? – Eenvincible

+0

Ja, 'versionCode 4' und' versionName "0.0.4" 'wurden aktualisiert. Ich denke, bei Google Play würde ich kein .apk mit denselben Versionsinformationen hochladen können. – user3105453

Antwort

1

Ihr Problem ist folgendes:

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 

     <action android:name="android.intent.action.VIEW" /> 

     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.BROWSABLE" /> 

     <data android:scheme="myapp" /> 
    </intent-filter> 

Sie sagen, dass diese Aktivität drei Bedingungen erfordert erfüllt sein:

  • Entweder ACTION_VIEW oder ACTION_MAIN
  • Entweder CATEGORY_DEFAULT oder CATEGORY_BROWSABLE oder CATEGORY_LAUNCHER
  • myapp als Schema

Der Launcher Startbildschirm wird nicht myapp als Schema hinzugefügt werden und so dem Startbildschirm (und die App Einstellungen) können diese Aktivität starten.

Vermutlich, was Sie wollen, ist zwei separate <intent-filter> Elemente für die gleiche <activity>: So

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="android.intent.action.VIEW" /> 

     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.BROWSABLE" /> 

     <data android:scheme="myapp" /> 
    </intent-filter> 
+0

Einfach perfekt. Ich danke dir sehr! – user3105453