Android 启动的目的
Android Things intent for boot
当我将应用程序部署到 Android Things 后重新启动时,应用程序没有启动。
是否有在启动时启动应用程序的特定意图?
以下intent-filter
需要添加到AndroidManifest.xml
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
你试过他们的演示应用了吗?在编写您自己的应用程序之前先尝试一下 first。这应该按预期工作。以后根据需要更改。
只需不要从代码的 AndroidManifest.xml 中删除 这部分。
<!-- Launch activity automatically on boot -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
为了在应用程序中提供 Android Things 支持,我们需要定义系统在启动时自动启动的主要入口点。
在为 activity 添加意图过滤器时,必须包含同时包含 CATEGORY_DEFAULT
和 IOT_LAUNCHER
的意图过滤器。
<application
android:label="@string/app_name">
<activity android:name=".HomeActivity">
<!-- Launch activity as default from Android Studio -->
<!-- For ease of development, this same activity should include a CATEGORY_LAUNCHER intent filter so Android Studio can launch it as the default activity when deploying or debugging. -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<!-- Add below intent filter which enable android things support for app -->
<!-- Launch activity automatically on boot -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
在 android 应用程序中检查 Home activity support 中的 Android 项。
如果您的 Android Things 设备有 多个 应用程序 已安装 那所有在清单中有这个意图过滤器:
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
(IOT_LAUNCHER,但已弃用)
那么您的应用程序将不会默认启动,而是会显示 Intent Chooser 对话框,系统将等待用户输入select 哪个应用 运行。 (无论您是否插入了实际的显示器,都会发生这种情况。如果您没有显示器,它可能会显示为设备只是挂着。)
我在这里写了一个脚本:https://gist.github.com/blundell/7c0c3bb17898b28fe8122b0dc230af50 它将卸载所有具有上述 Intent Filter 的应用程序,以便您可以重新启动并且只安装了 1 个应用程序 - 因此该应用程序将在启动时启动。
使用最新版本的 AndroidThings,IntentChooser 将不再显示,但是问题可能会持续存在,因为安装的应用程序之一 selected 可以打开而其他应用程序没有。
添加到AndroidManifest.xml
Developer Preview 0.8 及更高版本(新样式)
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
开发者预览版 0.8 之前(旧样式)
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
用户fishjd的回答,帮帮我。如果这不起作用,请尝试使用 adb 删除应用程序,然后重新安装它
adb uninstall <packet>
当我将应用程序部署到 Android Things 后重新启动时,应用程序没有启动。
是否有在启动时启动应用程序的特定意图?
以下intent-filter
需要添加到AndroidManifest.xml
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
你试过他们的演示应用了吗?在编写您自己的应用程序之前先尝试一下 first。这应该按预期工作。以后根据需要更改。
只需不要从代码的 AndroidManifest.xml 中删除 这部分。
<!-- Launch activity automatically on boot -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
为了在应用程序中提供 Android Things 支持,我们需要定义系统在启动时自动启动的主要入口点。
在为 activity 添加意图过滤器时,必须包含同时包含 CATEGORY_DEFAULT
和 IOT_LAUNCHER
的意图过滤器。
<application
android:label="@string/app_name">
<activity android:name=".HomeActivity">
<!-- Launch activity as default from Android Studio -->
<!-- For ease of development, this same activity should include a CATEGORY_LAUNCHER intent filter so Android Studio can launch it as the default activity when deploying or debugging. -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<!-- Add below intent filter which enable android things support for app -->
<!-- Launch activity automatically on boot -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
在 android 应用程序中检查 Home activity support 中的 Android 项。
如果您的 Android Things 设备有 多个 应用程序 已安装 那所有在清单中有这个意图过滤器:
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
(
那么您的应用程序将不会默认启动,而是会显示 Intent Chooser 对话框,系统将等待用户输入select 哪个应用 运行。 (无论您是否插入了实际的显示器,都会发生这种情况。如果您没有显示器,它可能会显示为设备只是挂着。)
我在这里写了一个脚本:https://gist.github.com/blundell/7c0c3bb17898b28fe8122b0dc230af50 它将卸载所有具有上述 Intent Filter 的应用程序,以便您可以重新启动并且只安装了 1 个应用程序 - 因此该应用程序将在启动时启动。
使用最新版本的 AndroidThings,IntentChooser 将不再显示,但是问题可能会持续存在,因为安装的应用程序之一 selected 可以打开而其他应用程序没有。
添加到AndroidManifest.xml
Developer Preview 0.8 及更高版本(新样式)
<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.HOME"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter>
开发者预览版 0.8 之前(旧样式)
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.IOT_LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
用户fishjd的回答,帮帮我。如果这不起作用,请尝试使用 adb 删除应用程序,然后重新安装它
adb uninstall <packet>