1.机器学习与人工智能(AI)
人工智能(AI)及其子集机器学习(ML)是指一组编程技术,这些技术可使应用程序自动学习并从体验中进行改进,而无需进行明确的编程。
对于使用非结构化数据(例如图像和文本)或解决包含大量参数的问题的应用程序,此方法非常有用。例如,可以预测客户接下来会看到或购买什么的应用程序。幸运的是,Android支持广泛的ML工具和方法,因此实现这种尖端功能比您预期的要容易。
在为Android开发ML应用程序时,开发团队需要设计产品,实现推理算法并部署现有ML模型,对其进行重新训练或构建新模型。Google编写了两个指南来帮助企业成功构建基于AI的应用程序:《People + AI指南》和《用于机器学习的材料设计》规范,其中包括针对ML的功能(如对象检测或条形码扫描)的设计指南和模式。
Android开发人员可以在ML Kit和Google Cloud中找到经过预先训练的模型,或者使用TensorFlow构建全新的模型。这里的一个重要决定是划分解决方案中的推理是在设备上运行还是使用远程云服务。
2.导航组件
导航是指允许在应用程序的不同部分和内容之间移动的所有交互。Android Jetpack附带了一个方便的Navigation组件,可以帮助开发人员实现导航,无论是简单的按钮单击还是更复杂的模式(例如导航抽屉)。
导航组件的另一个优点是,它还确保了一致且可预测的用户体验,因为实施该组件的开发人员将遵循既定的导航原理。
导航组件包括三个部分:
- 导航图 –一种XML资源,它在一个位置中包含所有与导航有关的信息(例如称为目的地的各个内容区域,以及用户可以通过应用程序使用的可能路径)。
- NavHost –一个空容器,在导航图中显示所有目的地。
- NavController –一个在NavHost中管理应用程序导航的对象。
导航组件还允许开发人员处理片段事务,默认情况下正确管理Up和Back操作以及实现深层链接。它还为动画和过渡以及导航UI模式提供了标准化资源。
3. Google助手/聊天机器人
到2021年,更多的企业主将有兴趣将其应用程序的内容和服务与Google助手相集成。投资于此类集成的主要好处是,您可以为用户提供更快的方法,使用户可以直接在Assistant中访问您的应用程序。
通过使用App Action,您可以从Google助手深层链接到移动应用程序中的特定活动。Android Slices是另一个功能,它使开发人员可以显示从您的应用程序到用户再到助手的最重要的内容。随着Google Assistant用户数量的增加,将移动应用程序与这种流行的虚拟助手集成在一起将成为许多开发团队的主要目标。