应用未显示在Huawei Watch 2的应用菜单中

时间:2019-05-20 12:53:42

标签: android wear-os watch huawei

我正在Android Studio中实现一个应用程序。我使用Huawei Watch 2遇到问题。该应用程序运行正常,但我不明白为什么它没有出现在手表的应用程序菜单中。

转到设置->应用和通知->信息应用,我看到了我的应用。

发生了什么,我该如何解决?

这是我的Manifest.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.prova._poc">

    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.VIBRATE" />

    <uses-feature android:name="android.hardware.type.watch" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@android:style/Theme.DeviceDefault"
        tools:ignore="GoogleAppIndexingWarning"
        tools:targetApi="ice_cream_sandwich">

        <service
            android:name=".MyfirebaseMessagingService" android:exported="false" >
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT"/>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            </intent-filter>
        </service>

        <service
            android:name=".MyFirebaseInstanceIDService" android:exported="false">
            <intent-filter>
                <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
            </intent-filter>
        </service>

        <uses-library
            android:name="com.google.android.wearable"
            android:required="true" />
        <!--
               Set to true if your app is Standalone, that is, it does not require the handheld
               app to run.
        -->
        <meta-data
            android:name="com.google.android.wearable.standalone"
            android:value="true" />

        <!-- [START fcm_default_channel] -->
        <!-- [START fcm_default_channel] -->
        <meta-data
            android:name="com.google.firebase.messaging.default_notification_channel_id"
            android:value="@string/default_notification_channel_id" />

        <activity
            android:name=".MainActivity"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.intent.action.VIEW" />

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

                <data
                    android:host="gizmos"
                    android:scheme="example" />
            </intent-filter>
        </activity>
        <activity android:name=".Splash">

            <intent-filter>
                <action android:name="Splash" />
                    <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

    </application>

</manifest>

2 个答案:

答案 0 :(得分:1)

您的主要Activity的清单输入错误。具体来说,要使其出现在任何Android设备上的应用启动器中,它需要一个<intent-filter>元素,如下所示:

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

我不确定为什么在其中还有其他所有内容,但是如果需要,请为其创建第二个<intent-filter>元素。您可以为给定的<activity>设置多个意图过滤器,以匹配不同的意图-但启动器的意图过滤器应包含此处显示的actioncategory

此处有更多信息:https://developer.android.com/guide/components/intents-filters.html

答案 1 :(得分:0)

在手机上安装应用程序也不会自动将其安装在手表上。如果您转到Play商店应用,然后从前屏幕向下滚动,则会在手机上看到标有“应用”的标题:这些都是手机上所有具有Wear OS配套应用的应用,您可以通过点击安装在右侧的任何按钮上。