Freigeben über


Verpacken von Verschleiß-Apps

Warnung

Die folgenden Dokumente und Beispielprojekte werden möglicherweise nicht mehr verwaltet. Ab Xamarin.Android 11.1 wird das automatische Verpacken einer Android Wear-Anwendung in einer Android Handheld-Anwendung nicht mehr unterstützt. Es wird empfohlen, stattdessen Android Wear-Anwendungen als eigenständige Anwendungen zu verteilen.

Android Wear 1.0-Apps werden mit einer vollständigen Android-App für die Verteilung auf Google Play verpackt.

Android Wear 2.0-Apps können als eigenständige Anwendungen an Google Play übermittelt werden.

Automatische Verpackung

Ab Xamarin Android 5.0 wird Ihre Wear-App automatisch als Ressource in Ihrer Handheld-App verpackt, wenn Sie einen Projektverweis vom Handheld-Projekt zum Wear-Projekt erstellen. Sie können die folgenden Schritte zum Erstellen dieser Zuordnung ausführen:

  1. Wenn Ihre Wear-App noch nicht Teil Ihrer Handheld-Lösung ist, klicken Sie mit der rechten Maustaste auf den Lösungsknoten, und wählen Sie "Vorhandenes Projekt hinzufügen" > aus.

  2. Navigieren Sie zur CSPROJ-Datei Ihrer Wear-App, wählen Sie sie aus, und klicken Sie auf " Öffnen". Das Wear-App-Projekt sollte jetzt in Ihrer Handheld-Lösung sichtbar sein.

  3. Klicken Sie mit der rechten Maustaste auf den Knoten "Verweise", und wählen Sie "Verweis hinzufügen" aus.

  4. Aktivieren Sie im Dialogfeld "Verweis-Manager " Ihr Wear-Projekt (klicken Sie, um ein Häkchen hinzuzufügen), und klicken Sie dann auf "OK".

  5. Ändern Sie den Paketnamen für Ihr Wear-Projekt so, dass er dem Paketnamen des Handheld-Projekts entspricht (der Paketname kann unter "Eigenschaften > Android Manifest" geändert werden).

Beachten Sie, dass sie eine XA5211-Fehlermeldung erhalten, wenn der Paketname der Wear-App nicht mit dem Paketnamen der Handheld-App übereinstimmt. Zum Beispiel:

Error XA5211: Embedded wear app package name differs from handheld 
app package name (com.companyname.mywearapp != com.companyname.myapp). (XA5211)

Um diesen Fehler zu beheben, ändern Sie den Paketnamen der Wear-App so, dass er dem Paketnamen der Handheld-App entspricht.

Wenn Sie auf "Alle erstellen" klicken>, löst diese Zuordnung die automatische Verpackung des Wear-Projekts in das Hauptprojekt Handheld (Phone) aus. Die Wear-App wird automatisch erstellt und als Ressource in der Handheld-App enthalten.

Die Vom Wear-App-Projekt generierte Assembly wird nicht als Assemblyverweis im Handheld-Projekt (Phone) verwendet. Stattdessen führt der Buildprozess folgende Aktionen aus:

  • Überprüft, ob die Paketnamen übereinstimmen.

  • Generiert XML und fügt es dem Handheld-Projekt hinzu, um es der Wear-App zuzuordnen. Zum Beispiel:

    <!-- Handheld (Phone) Project.csproj -->
    <ProjectReference Include="..\MyWearApp\MyWearApp.csproj">
        <Project>{D80E1FEF-653B-448C-B2AA-609C74E88340}</Project>
        <Name>MyWearApp</Name>
        <IsAppExtension>True</IsAppExtension>
    </ProjectReference>
    
  • Fügt die Wear-App als Rohressource zum Handheld-Projekt hinzu.

Manuelle Verpackung

Sie können Android Wear-Apps in Xamarin.Android vor Version 5.0 schreiben. Sie müssen jedoch die folgenden anleitungen zum Verpacken der App befolgen:

  1. Stellen Sie sicher, dass Ihr Wearable-Projekt und Ihre Handheld-Projekte über die gleiche Versionsnummer und denselben Paketnamen verfügen.

  2. Erstellen Sie das Wearable-Projekt manuell als Release-Build .

  3. Fügen Sie die Version manuell hinzu. APK aus Schritt (2) in das Ressourcen-/Rohverzeichnis des Handheld-Projekts (Telefon).

  4. Fügen Sie im Handheld-Projekt manuell eine neue XML-Ressource "Resources/xml/wearable_app_desc.xml " hinzu, die sich aus Schritt (3) auf Wearable APK bezieht:

    <wearableApp package="wearable.app.package.name">
        <versionCode>1</versionCode>
        <versionName>1.0</versionName>
        <rawPathResId>NAME_OF_APK_FROM_STEP_3</rawPathResId>
    </wearableApp>
    
  5. Fügen Sie dem AndroidManifest.xml-Element <application> des Handheld-Projekts ein <meta-data /> Element manuell hinzu, das auf die neue XML-Ressource verweist:

    <meta-data android:name="com.google.android.wearable.beta.app"
        android:resource="@xml/wearable_app_desc"/>
    

Siehe auch die Anleitungen zum manuellen Packen der Android-Entwicklerwebsite.