车载AAOS系统实现三分屏SplitScreen功能专题

Android视频播放源码,支持小屏,分屏 Android视频播放源码,支持小屏,分屏Android视频播放源码,支持小屏,分屏Android视频播放源码,支持小屏,分屏,列表播放 立即下载

AAOS实现三分屏背景:

上一篇车机手机三分屏相关实战课程文章,已经给大家展示了课程做出的三分屏效果如下:
在这里插入图片描述这个三分屏运行的设备实际是我们的手机横屏的情况下,使用编译的参数是需要lunch目标为phone相关的。
这个三分屏功能效果一上线后基本上很多网友都感觉到很惊艳,特别是做车机相关开发的同学都说自己想做这个几年了,老板也一直想要做,奈何自身实力不够一直拖到马哥的课程出来后,才敢有勇气和老板说可以做车机三分屏功能了。

不过有的同学在后台也提出马哥这个三分屏都是在phone平台进行实现的,但是自己公司用的都是AAOS系统,这块是否有啥差异,是否可以帮忙看看AAOS上如何运行马哥的三分屏给你。

在这里插入图片描述针对AAOS系统本身就是完全使用的手机那一套代码,所以这块基本上马哥做的原有的手机三分屏逻辑不需要任何修改。只需要考虑调研AAOS的分屏相关功能是否开发,而且可能需要自己实现相关的分屏入口函数的调用,从而进入AAOS的分屏功能。
因为原生的车机系统AAOS是屏蔽了分屏相关功能,所以这里总结一下AAOS上实现分屏的步骤:

在这里插入图片描述一共就是上面两个步骤就可以。

马哥这边抽了一两个小时就快速帮大家搞定了AAOS的三分屏功能作为课程的补充,具体的效果如下:

在这里插入图片描述
可以看到我们通过点击车机的右上角按钮就可以进入到AAOS系统的三分屏给你,而且所有的三分屏功能交互体验和手机的三分屏交互体验一模一样。

课程特色及适合人群

课程环境及设备:

1、aosp版本android-14_r15 和 android-16.0.0_r2
2、安卓模拟器14和16版本
课时数量:
25+课时

特色:

千里马手把手带你从0开始做一个车机的三分屏功能,最后做出来一个和市场上主流的小米su7 三分屏体验相当的三分屏成果。
在这里插入图片描述

从简单的产品背景,产品设计开始学习,实战带大家简单开始改造原生二分屏,循序渐进做出最初版本三分屏,逐步完善DividerView,落点设计,核心的Task部分拖拽放大等逻辑。同时也给大家适配好了两个安卓大版本:aosp14和aosp16课程代码都支持。

学习课程可以获得对wms相关窗口深入知识,分屏相关的深入知识,解决系统中窗口显示的疑难问题,比如黑屏,不显示,显示位置异常,额外给系统添加窗口显示异常等核心技术点。

适合人群:

有framework基础并且也学习过马哥的WMS和分屏自由窗口专题,有较强的fw窗口相关开发经验。

课程详细课表:

android车机手机三分屏实战项目专题课表:
在这里插入图片描述

详细课表

三分屏项目实战课介绍

二分屏相关基础知识回忆

三分屏方案设计1

三分屏方案设计2

三分屏实现静态任务1

三分屏实现静态任务2

三分屏实现静态任务3

task落点位置配置

DividerView分割线部分开发1

DividerView分割线部分开发2

三分屏引入task显示bug修复1

三分屏引入task显示bug修复2

三分屏引入task显示bug修复3

三分屏引入task显示bug修复4

修改三分屏情况下task点击显示异常

分屏task进行拖动部分源码分析

三分屏task进行拖拽实现1

三分屏task进行拖拽实现2

三分屏task进行拖拽实现3

三分屏task进行拖拽实现4

三分屏task进行拖拽实现5

三分屏task进行拖拽实现6

三分屏task进行拖拽实现7

三分屏功能适配aosp16

三分屏外观圆角尺寸区域美化

AAOS车机系统中开放二分屏三分屏

待补充

课程模块图片花絮:

在这里插入图片描述

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
原文地址及更多三分屏资料:
https://mp.weixin.qq.com/s/e65crgwzNKf3162YilkG5Q

更多三分屏实战文章资料,请关注下面“千里马学框架”

图像处理系列——直方图之直方图规定化(Histogram Specification) 直方图规定化也叫直方图匹配(Histogram Matching),让原图像的像素分布与规定图像的像素分布保持一致。直方图规定化比直方图均衡化更加灵活,算是直方图均衡的变种。常用于图片风格一致性的自动处理,能有效的改善图像的整体或局部的特征,广泛运用在图像增强处理中。 阅读详情

相关推荐

自制电吉他效果器 DIY PCB(二)电路图分析

自制DIY电吉他效果器 PCB(二)电路图分析 要自制一款效果器,看懂电路图是必须的,即使你已经有了完整的设计电路图,在电路的绘制已久焊接的时候电路知识都会用到。 在效果器电路中,比较简单的是过载失真类效果器的电路。混响延迟等与声相有关的由于电路比较复杂本人也没有尝试过。其他的例如EQ、哇音等等效果器复杂程度依设计各不相同,在能做出过载失真类效果器后,可以自行尝试。 我这里主要为大家介绍失真效果器...

qq_41342525的博客 2万+

安卓14-16车机手机仿小米su7三分屏实战项目专题

《Android三分屏功能开发实战课程介绍》 随着车载系统和折叠屏设备的发展,三分屏功能逐渐成为新趋势。本课程针对具备Framework基础的开发者,通过25+课时系统讲解三分屏的实现原理和开发技巧。课程基于AOSP14/16环境,从二分屏改造入手,逐步实现DividerView设计、Task拖拽逻辑等核心功能,最终完成媲美小米SU7的三分屏效果。内容涵盖窗口管理、显示异常处理等关键技术点,并提供完整的项目实战指导。课程特色在于手把手教学,配套详细课表和代码资源,帮助开发者掌握多窗口管理的核心技术。适合想深

liaosongmao1的专栏 62

WorldQuant Brain Alpha 生成器

一个自动化工具,通过参数优化和回测来挖掘高质量的量化交易 Alpha 因子,并自动提交符合标准的因子。

weixin_37582383的博客 1万+

Android 把屏幕划分3等份;应用显示在中间区域

Android 把屏幕划分3等份;应用显示在中间区域 效果如下:

501846585_QQAndroid_java 1936

408——计算机组成原理(持续更新)

小数点前的0代表正数,1代表负数。

qq_55202378的博客 1720

影刀rpa的使用一--读取excel表格数据并循环出每一项

1、全部展示2、运行结果展示之后可以按照各自的需求对excel中取出的数据进行处理。

qq_69268437的博客 1万+

aosp14分屏分割线区域部分深入剖析-framework实战干货

核心看看这里的topPosition,bottomPosition是怎么计算的,刚好也可以解释为啥这里名字有16_9这个字符,其实本质就是计算个topPosition位置,拿竖屏来举例的话,这里因为想要屏幕宽度固定的,为了美观程度,所以一般topPosition这个区域要固定为一个16:9区域。上面已经分析出了分割线的几个SnapTarget,这些SnapTarget都是有固定位置的,那么接下来分析一下分割线如何到对应的SnapTarget。

liaosongmao1的专栏 278

自适应粒子群优化(Adaptive Particle Swarm Optimization,APSO

下面是一个关于自适应粒子群优化(Adaptive Particle Swarm Optimization,APSO)的博客,希望可以帮助您。提示:以下是本篇文章正文内容,下面案例可供参考在上面的代码中,表示粒子的数量,表示解空间的维度,表示迭代次数,表示优化的目标函数。在__init__方法中,我们初始化了粒子群的位置和速度,并将每个粒子的位置作为其最优解,将其适应度值初始化为正无穷。我们还初始化了学习因子和惯性权重的参数。在run方法中,我们迭代了次,计算每个粒子的适应度值和最优解。

weixin_52026057的博客 9912

Android12分屏与定制三分屏设计文档

Android12三屏分屏与甩屏功能实现 本文介绍了基于Android12系统实现三屏分屏与甩屏功能的定制开发方案。系统在原有双屏基础上新增了第三屏幕区域,重新设计了分屏滑动算法和布局变化逻辑。主要模块包括: 分屏拖放:通过DragAndDropController实现拖拽功能,新增DragLayout视图处理拖拽事件 分屏控制:SplitScreenController管理分屏布局,StageCoordinator协调三个屏幕(主屏、副屏、后排屏)的交互 界面展示:SplitLayout处理分屏边界计算,

jsm1010的博客 1789

如何在 SAP BTP 上使用 Integration Suite 消费 S/4HANA Cloud API

SAP Integration Suite是一个集成平台即服务(iPaaS),允许开发人员顺利地将内部部署和基于云的应用程序和流程与SAP管理的工具和预构建内容进行集成。登录 SAP Business Technology Platform Cockpit,进入 integration suite:再点击 API management 进入 API Portal:或者直接从收藏夹里打开链接:https://304a49cetrial.integrationsuitetrial-apiportal.cfapp

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1696

python:实现brutefore破解wifi(附完整源码)

python:实现brutefore破解wifi(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 5698

车机开发蓝海:AAOS 多屏幕协同技术实践

随着车路云一体化的推进,AAOS 多屏幕协同将不再局限于 “座舱内”—— 未来可能实现 “手机投屏至中控屏,中控屏同步导航到 HUD,同时将媒体信息推送到智能家居屏” 的跨场景交互。:原生 Android 的 SurfaceFlinger 仅管理单屏图层,AAOS 版本则支持 “按屏幕分组”,确保不同屏幕的图层渲染同步(比如中控切换歌曲时,仪表盘歌词实时更新)。:SOC 会向所有屏幕发送统一的垂直同步信号,确保各屏幕在同一时间刷新画面,避免出现 “中控显示导航下一步,仪表盘还停留在上一步” 的延迟问题。

Android技术之家 1781

RK3568平台开发系列讲解(UBOOT篇)u-boot启动流程

U-Boot(Universal Bootloader)是一种开源的引导加载程序,广泛用于嵌入式系统中。它的主要功能是初始化硬件设备,加载操作系统内核,并将控制权交给操作系统。U-Boot的启动流程可以分为多个阶段,以下是典型的U-Boot启动流程:

内核笔记 1231

如何改进车载三分屏SplitScreen启动交互方式?

上面这2个需求其实在真正的车机分屏中也是非常常见的哈,所以这里马哥收到学员的疑问后立即就给大家针对课程的三分屏进行相关的交互改善,实现了三分屏的动态进入,三分屏的Task内容的动态控制等。还有三分屏的各个Task是否可以不通过最近任务进行操作,有没有更简单的进入三分屏方式?这里面的componentName1,componentName2,componentName3就是三分屏的每个Task的对应Activity的名字。进入后发现第三屏Task内容就是设置的我的文件对应的FilesActivity。

learnframework的博客 412

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

竞品技术调研:小米分屏SplitScreen自由窗口Freeform中快捷切换按钮

主要是提供对当前Task的的一些模式变换的快捷操作方式,切换的Task模式不需要像以前一样需要先退出当前模式,再重新进入最近任务再进入另一个模式,现在分屏和自由窗口之间的切换都只需要通过这个快捷窗口就可以。

learnframework的博客 940

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

aosp13/14命令行进入分屏相关实战

明显可以看出这个代表移动taskId到分屏的sideStagePosition,注意了,这个命令只需要指定一个taskId和他的position既可以,那么这里大家会有疑问那么另一个分屏该显示谁?代表成对显示的意识,即吧taskId1和taskId2进行成对显示,即分屏,但是这个分屏和桌面进入的分屏是不一样的,核心不一样的点就是层级结构树都不一样,具体看如下实战。当前task层级结构树的最顶部符合分屏要求的task,一般就是最顶端的task。这个时候就需要有一个可以直接通过命令行拉起分屏的需求是最好的。

learnframework的博客 2774

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Android7.0分屏功能

Android-多窗口

huyuchaoheaven的专栏 1992

Android系统的三种分屏显示模式

      Google在Android 7.0中引入了一个新特性——多窗口支持,允许用户一次在屏幕上打开两个应用。在手持设备上,两个应用可以在"分屏"模式中左右并排或上下并排显示。在电视设备上,应用可以使用"画中画"模式,在用户与另一个应用交互的同时继续播放视频。这种"分屏"模式在Android方案的车机上会比较有用,可以支持导航和其他功能同时显示,如下图所示。这是Android的第一种分屏显示...

weixin_34301307的博客 2792

iPhone Duo跌倒,国产折叠屏手机吃饱?

为了将任务流贯彻其中,vivo X Fold6搭载了行业首个专为折叠大屏定制的OriginOS 6Fold操作系统,配合上搭载的蓝晶x天玑9500芯片,不仅能带来高性能低功耗的性能体验,而且在应用层还升级了首发的“原子工作台”功能,支持四个应用窗口同屏呈现、同时运行、无需切换,可随意拖动窗口大小。毕竟,华为作为国产折叠屏手机的一面旗帜,从Mate X、Mate X2双折叠,到Mate XT系列三折叠,再到Pura X系列阔折叠,很早就实现了对折叠屏产品矩阵的全布局。

2401_84038765的博客 279

【办公类-04-05】20261030整理手机照片(华为手机助手导出照片到日期文件夹+批量添加四级文件夹+手动转移照片更名+更改三级文件夹合并汉字名称)

【办公类-04-05】20261030整理手机照片(华为手机助手导出照片到日期文件夹+批量添加四级文件夹+手动转移照片更名+更改三级文件夹合并汉字名称)

reasonsummer的博客 708

MDM 销售工作手机横向测评:云客、鱼汛、剪流、无障碍录屏方案,技术选型该怎么判断?

表格方案底层底座核心优势短板更适合的团队云客原生 MDM系统审计、私有化、硬件管控、取证可靠AI 为事后质检,缺少实时谈单辅助大型集团、金融、强合规审计,对实时 AI 需求低鱼汛 AI 销冠原生 MDM线索派单、跟进时效管控、标准化工单集群调度弱,档案结构化一般广告付费线索多、以线索流转考核为主的团队剪流 AI 员工手机华为 HEM 原生 MDM实时 AI 异议陪谈、客户档案串联、错峰集群风控需要 2–4 周灰度试点磨合。

Anchor368的博客 155

ARM高密度云手机集群,网络与端口隔离配置方案

在 ARM 服务器搭建 Redroid/KVM 安卓实例集群时,很多开发者前期只关注 CPU、内存、GPU 渲染性能,很容易忽略网络隔离问题。实例之间互通无限制,内部流量横向访问,存在测试数据互相污染;ADB、VNC、Scrcpy 端口冲突,端口管理混乱;所有实例共用同一个出口 IP,在测试场景下容易被目标服务判定为同源环境;单实例网络风暴、异常流量抢占整台服务器带宽资源。

a598652的博客 233

MicYou 与文本转语音工具:手机变电脑麦克风、文字一键转语音

言归正传,今天给大家带来两款软件,一款是手机变成电脑麦克风,一款是文本转语音工具。

weixin_68551689的博客 225

国行iPhone的AI能力落地了,但还不是AI手机

其一,iPhone 15标准版及更早机型的用户不在覆盖范围内,换机是使用的前提,不是可选项。同一来源的评论文章把逻辑说得更直接:合规是硬门槛,境外模型没法直接落地中国,苹果只能找本土备案的模型方,而阿里正是绑定的模型提供方(E39)。决定“够不够”的,是缺席的那部分。Siri是iPhone上唯一贯穿系统、以语音为入口的助手层,它没有升级,意味着用户与设备之间的交互方式没有改变,改变的是若干具体任务的处理效率。它是国行iPhone AI能力的一条及格线,落地的是一套可用的工具,而不是一次设备形态的换代。

全世界的博客 266
上一篇: 安卓14-16车机手机仿小米su7三分屏实战项目专题
下一篇: 性能优化提效方案:App冷启动优化成绩测试干货分享(一)
千里马学框架
博客等级 码龄6年 1万+粉丝 648原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千里马学框架

帮助你了,就请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值