这篇文章给大家聊聊关于open tiktok,以及Meta的黑公关,TikTok是好靶子对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

rather do my math作者
RobinGan。
歌词:IopenTikTokeverybodyshowingofftheirqueen,
我打开TikTok,每个人都在秀恩爱
I,wakeupinthemorningbrokeandIgotnothing.
我一觉睡醒除了穷什么都没有
SheasksmewhyIaskedfornudes
她问我为啥问她要清凉照
I'mlike"whatdoyoumean"
我想说“你啥意思”
2PM都有什么歌
10�3�9�0�7�3�9�2�310�3�9(10分满分10分)(主打曲)OnlyYouAngelOnlyYou(WinterSpecial)WhatTimeIsItNowAgain&Again(主打曲)�9�1�7�5�0�0�9�9讨厌你(后续曲)�9�1�2�3�2�5�3�1�9�3�0�5�9�5说不定会回来Again&Again(R&BMix)MyHeartHeartbeat(主打曲)�8�5�9�9�0�5�9�9�3�1�4�1�9�9(等到累了)�8�3�2�3�7�5�0�3�4�5�2�5�9�9(为你疯狂)GimmeTheLightBack2UAllNightLongHeartbeat(RedLightMix)OnlyYou(AcousticMix)�9�1�7�5�0�0�9�9(讨厌你)(LoungeMix)�9�1�2�3�2�5�3�1�9�3�0�5�9�5(不懂得回来)(BossaNovaMix)MyColor(三星手机广告曲)MyLove(巴黎贝甜广告曲)TikTok(with尹恩惠)Crazy4s(SPLIS广告曲)OpenHappiness(可口可乐广告曲)FollowYourSoul(OPPOMOBILEPHONE泰国广告歌曲)Don’tStopCan’tStopWithoutU(主打曲)�0�3�3�1�0�8�2�7�3�5�7�1�9�9Space�0�3�3�1CabiSong(with少女时代)-----------------------------------------------------------------------以上是所有专辑曲,重复的没列出来,加黑体的是在正式台上唱过的Nichkhun自己还唱过《webecomeone》《let'stakeabreath》是泰国宣传曲
麻烦采纳,谢谢!
Meta的黑公关,TikTok是好靶子
美国《华盛顿邮报》的那篇《Meta付费给共和党公司抹黑TikTok》,再次将Meta和TikTok推到了风口浪尖。
根据该报道,Facebook的母公司Meta雇佣了一家与共和党关系密切的知名咨询公司“TargetedVictory”,在全美策划了一系列“反TikTok运动”,试图把这款总部在中国的、快速发展的产品,定性为对美国儿童和社会的威胁,从而从政治和舆论上彻底干掉这个他认为的最大的竞争对手。
报道称,这场反TikTok运动,主要是把曾在脸书上出现的不良内容说成是TikTok上的内容,比如“打老师挑战”“偷东西挑战”等,并通过全美范围地方媒体和游说团体共同努力,将TikTok描绘为对美国儿童和社会的一大威胁,然后向美国政客、议员施压,迫使他们对TikTok采取行动。
在把火引到TikTok身上的同时,TargetedVictory也努力让当地媒体对Meta进行“积极报道”,通过写信和发表评论文章等方式表彰Meta的善举,例如积极支持黑人创办的企业等。
TargetedVictory由莫法特一手创立,多年来一直与Meta有合作,2016年美国总统大选后,Meta(当时的Facebook)被国会听证调查,TargetedVictory就曾帮Meta脱身。
1
在这场黑公关大战中,Meta要传达的信息是:虽然Meta有各种问题,如今是众矢之的,但TikTok才是美国的真正威胁,因为它在疯狂收集美国青少年的数据,而且还是中国政府主导的。
这话听上去是不是很熟悉?在2019年,扎克伯格在乔治城大学发表演讲,攻击TikTok的(中国政府)内容审查制度,还自我表扬Facebook在言论自由上的成就。同时扎克伯格一直游说美国政界人士,强调对TikTok与中国政府关系的担忧。甚至在一次私人晚宴上也向时任美国总统特朗普提出了同样的理由,重申了中国互联网公司对美国企业构成的威胁。
扎克伯格的各种努力也奏效了,2019年底美国政府宣布对TikTok进行国家安全调查,后面的事情大家就都知道了。
据OpenSecrets数据,2021年,Meta单在游说联邦政府方面花费2000多万美元,仅次于美国前六大公司和行业组织。鉴于一直以来Meta这种利用政治手段来扼杀对手的方式,如今被发现再次以这种方式引发人们对TikTok的质疑和攻击,也就不足为奇了。
当然,Meta打击对手的手段当然不仅仅只有政治手段,它同样擅长以市场方式,比如收购、抄袭等等手段来消灭竞争对手。在收购竞争对手Instagram和WhatsApp后,2013年,Meta以同样的方式要收购Snap。
后来Snap的CEO斯皮格尔在一次采访中透露过2013年他与扎克伯格的秘密见面,提到一些细节,比如当斯皮格尔和他的CTO一起出现的时候,扎克伯格已经很强势地安排好了对Snap的规划,而且扎克伯格还炫耀性地提到了几天后他们要发布的一个与Snap十分相似的新产品。整场会面,扎克伯格传达的信息是:不服从就毁灭你。
这场收购以失败告终,后来Meta果然推出了与Snap没有太大差别的产品InstagramStories,而且成功地抢走了Snap的市场份额,Snap后来虽然上市但最终也没能逆袭,如今也不在Meta的主要竞争对手名单了。
如今Meta的全球事务公关负责人是前英国副首相克雷格,有这样的政治家来负责企业公关,Meta可以采用任何可能的方式寻求胜利,黑公关,政治手段,无论怎样过分都不会令人惊讶了。总的来说,以毁灭对手为目的便是Meta一贯做事的手段,并深深地刻在Meta的DNA中。
但在美国,Meta以开展各类游说活动并不违法。即便是如今被爆出这样的黑公关,TargetedVictory依旧表示与Meta合作多年,非常自豪自己所做的事情,而Meta则大言不惭地表示自己所做的一切都是为了帮助美国消除隐忧,声称TikTok应该面对与其成功程度相符的审查,还是试图将火引到TikTok身上。
不过,此前美国政府有专门针对Meta收购Instagram和WhatsApp的反垄断案件的调查,虽然还没有结论,但Meta如今针对TikTok所做的事情,意外地为这个案例提供了更多的证据和要素,虽然不确定那一天何时到来。
2
就在前不久,Facebook悄悄在TikTok上开设了账号,虽然没有推广,也没有发布任何内容,但目前已经积累了大量粉丝,每天还在不断增加。目前唯一可以看到的信息是该账号的简介:我们相信可以一起做更多,而不是独自一人(Webelievepeoplecandomoretogether,thanalone)。这句话也引发了人们的许多猜测。难道Meta此举是为了深入敌营侦查竞争对手?
对此,Meta发言人含糊回应说是会利用包括社交平台在内的各种渠道,与每天使用其产品和服务的人沟通互动。这样官方的回答似乎还是无法解释这个问题。
Facebook其实并不是TikTok上第一个Meta系的账号。此前Instagram在TikTok上注册了账号InstagramCreators,内容正是教大家如何使用Reels。所以一些人猜测Facebook的新账号,应该也是为了在TikTok上推广Reels,将用户挖到Reels上去。
Reels是Meta直接对标TikTok的短视频平台,几乎是全盘抄袭了TikTok。当然,这也不是Meta第一次抄袭竞争对手,前面有Snap,2018年的Meta还推出过Lasso,一款山寨版的TikTok,后来也草草收场,如今Meta再次押宝Reels,试图与TikTok决一死战。
Reels确实给Meta带来了一些信心,扎克伯格在此前的财报电话会议上说,越来越多的用户花时间在Reels上,Reels已成为Meta迄今为止增长最快的应用。所以,Meta会将其长期发展重点放在Reels身上,希望靠它吸引更多年轻人。
当然,市场上也不止Meta一家在发力短视频领域,Youtube、Snap等各大短视频平台,也都相继推出重金激励,以吸引更多高质量创作者入驻,在吸引更多年轻人的同时,也吸引更多的广告商进来。这个市场鹿死谁手,犹未可知。
3
2月初,Meta公布了第四季度财报。其中,Facebook日活用户数出现了18年来的首次下降。该季度Facebook全球日活用户为19.3亿,环比下降50万人。与此同时,广告收入增长放缓,营收336.71亿美元,净利润102.85亿美元,这也是Meta自2019年第二财季后首度出现利润同比下滑。
同时,Meta披露了今年一季度营收指引为270-290亿美元,对应增长率为3%-11%,远低于华尔街普遍预期的301亿美元,也更远低于去年同期48%的增长。由此也带来了市场的极大反应,市值急剧缩水。
当然,从市场对该财报反应不佳来看,除了元宇宙的预期问题,很重要原因,一方面是去年苹果的隐私新政对严重依赖数字广告收入的Meta造成巨大冲击,Meta表示iOS系统以隐私为重点的变化,包括"要求应用程序不要跟踪"的通知,将使该公司在2022年损失约100亿美元。
另外,谷歌很快将跟随苹果步伐,为Android的大多数用户提供选择不接受广告追踪的能力。它还计划在其Chrome网络浏览器中禁止第三方cookies,未来这些措施对Meta的广告业务同样会产生很大的影响。
而另一方面,人们花在Facebook、Instagram、WhatsApp等等平台的时长越来越少,年轻人正在失去他们对这些平台的兴趣,再加上疫情之后人们更多走出家门,这一趋势会更加明显,这从其活跃用户的首次下降也能看出端倪。
与此同时,TikTok的飞速增长在不断蚕食Meta的地盘,让Meta将TikTok当做了自己最大的威胁。根据Forrester的调查数据,2021年,在12岁至17岁的美国人中,每周有63%的人使用TikTok,高于一年前的50%。与此同时,Instagram的人群使用比例,则从2020年的61%下降到2021年的57%。
同时,根据追踪互联网流量的云基础设施公司Cloudflare的《互联网年度影响力报告》,2021年互联网访问量最大的网站TikTok。同时,TikTok也是2021年全球下载量排名第一的APP。去年9月,TikTok的月度活跃用户达到了10亿,这也意味着,在用户量上,TikTok用四年时间走完了Facebook八年的路。
在Meta的各种内外的言论中,TikTok也被当做一个强大的竞争对手不断提及和强化。当然,一部分原因,TikTok的确是Meta担忧的对手,但某种程度上,这也是一种Meta擅长的宣传手段而已,以此强化TikTok的威胁。
4
问题是,Meta果真需要这么关照TikTok吗?
尽管二者之间的用户数量距离在拉近,但从商业化的角度来看,目前Meta是绝对的头部,TikTok的收入是远远低于Meta的。比如Meta2021年广告收入是1149.3亿美元,TikTok没有披露过自己的财务数据,但有媒体估计TikTok2021年广告收入应该在40亿美元左右,连Meta的零头都不够。
当然,伴随着用户的不断增长,广告主自然会将预算倾斜至高流量的平台,未来TikTok的商业收入的增长是必然会发生的事情。但市场更应该关心的问题是,这种变化究竟是Meta与TikTok的问题,还是整个社交平台的大势所趋?即用户逐渐退出传统社交平台?年轻人向更多短视频转移?广告商也将预算转移到其他的地方了吗?
实际上,TikTok对于社交平台的冲击和威胁,其实是无差别的。这从抖音在国内的发展就可看出来,在争夺用户时间和注意力的战争中,抖音对于微信、长视频平台甚至淘宝京东都有冲击,但总体而言,这些受到冲击的平台也并没有因此消亡。只要是还能存在于市场中并保持稳健发展的平台,一定都有满足市场某种需求的核心优势所在,这也是各家的护城河。Meta基于传统熟人社交的核心优势也依旧存在。
在CopyfromChina的这种潮流之下,国内一些优秀的能将人货场以内容方式更好连接在一起的产品和应用也在源源不断被搬运到海外,比如Google正在自己的生态体系内搭建类似微信生态的应用,包括社交、内容、电商、支付等等,一旦像微信一样打通,未来也有可能在社交赛道对Meta形成绝对的碾压之势。
所以就算没有TikTok,也会有其他的平台来蚕食Meta的地盘。若某一天苹果或者亚马逊成为Meta认为的最大对手,也并不奇怪,对手不一定是在同一赛道,更有可能是从其他赛道突然长出来的。
Meta也在不断寻找自己的新故事。此前Meta公布了2022年的投资重点,包括Reels、社区信息流、电子商务、广告、隐私、AI、元宇宙。但市场对于这些投资方向依旧保持怀疑的态度,认为Meta已经失去想象力,更多的只是疲于应对,因为这些投资领域,实际上都已经有了先行者,Meta的战略是在追赶而非引领创新,已经全然被动了。
而Meta已经开始投入的元宇宙、Reels,它们现有的商业化速度无法匹配资本市场对于互联网科技平台高利润高增长的要求,就算是要转型,Meta也还会面临长期的业绩增长放缓的挑战,市场有多大的耐心,这个也会是一个大问题。
参考资料:
TheWashingtonPost:FacebookPaidGOPfirmtomalignTikTok
SocialmediaToday:MetaisWorkingwithPoliticalActiviststoSeedConcernsAboutTikTok
怎样在切入切出虚拟摄像头时营造卡顿效果
背景介绍:本人原先是android逆向工程师,后来因为工作变动,离开了协议分析这类的岗位,目前在做直播机与第三方应用兼容性分析相关分析,所以就有了这篇兼容性分析文章。
问题:tiktok在我们推流设备直播时,经过几个特定步骤后切换前后置摄像头会出现卡住的问题。
重现步骤:直播界面打开更多菜单->然后退到后台->回到前台->切换前后置菜单。
现象:直播画面卡住不动了。
解决思路:找到点击切换按钮后的点击事件回调,找到切换摄像头的核心逻辑,来找到卡住原因。
1、如果了解ART虚拟机的同学会知道,jni函数和java函数都会调用到art虚拟机ArtMethod的Invoke函数。

输出日志:
findtargetmethod:android.view.View.performClick
ArtMethodInvoke【22955】:;lr:0x4af78c;libart.so:android.view.View.performClick
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:java.lang.Enum.toString
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:X.Ggh.LIZ
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:java.util.LinkedHashMap.<init>
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:java.util.HashMap.putAll
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:java.util.HashMap.put
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:X.DED.LIZ
ArtMethodInvoke【22955】:;lr:0x2e2800;libart.so:X.D5k.onClick
通过fridahooklibart.so的ArtMethod的Invoke函数,我们找到了点击事件的回调类X.D5k.

找到这个类对应的onClick函数后,我对整个流程做个简单的研读,感觉发现了核心代码在注释直播流处理。

跟着核心代码一路往下找到LiveCore这应该就是直播的核心代码,其实现类为LiveCoreImpl,ILiveStream的实现类为LiveStream。


发现此处只是做了日志信息的合成和应用镜像之类的代码,但是又找到一个核心的类LiveStreamVideoCapture。

追踪到这里发现链路断了,又凑巧通过frida打开tiktok卡死在启动页上,那么接下来使用Xposed继续理流程。
上面的代码虽然没有追中到切换摄像头的核心逻辑,但是我们找到了两个核心逻辑的类LiveStreamVideoCapture和LiveCoreImpl,分别和直播视频流控制直播核心流程控制相关,所以Xposed继续走的时候以这两个类为重点,那么此处就开始放大招了,hook这两个类的所有函数,贴上代码。注意这里使用的classloader是application的classloader。


日志太多了,这里通过shell命令setprop做了个日志控制。



然后找到CameraVideoCapturer类的tryDeliverFrame,这里是处理相机的视频帧,感觉越来越接近真相了,继续hook这个方法,然后发现相机切换卡住以后,这个方法也停止调用了,那么没办法,继续往上找堆栈中run方法的调用调用处。

继续hook。


找到这个类。

至此,熟悉相机开发的同学应该知道,这就是SurfaceTexture.setOnFrameAvailableListener后,相机的可用帧会回调到这个函数,切换相机后卡顿,可用帧也同时不回调。
接下来hook原生相机。



调用的是android.hardware.Camera,也就是camera1相关的api,切换卡顿的时候并没有调用Camera.open函数。


首次开直播的时候调用了这两个函数,点击切换相机的时候并没有调用,在X.HCF这个类里找到switchCamera函数,那么猜测首次开相机,和切换前后相机走的并不是同一个流程,因为这个bug只有在切换相机时才会出现,所以我们就不关注首次开相机的流程。


果然,切换相机的时候走了这个流程,这是又发现了LiveStreamVideoCapture这个核心类,那么简单进去看看SwitchCaptureRunnable这个有没有被创建。


经过测试,发现这个类只会被创建一次,而run方法每次切换都会被调用,而且卡住的情况下也会被调用,那么结合上面Camera.open卡住时没有调用,可以大胆的猜测中间过程某个条件不满足被return了。根据堆栈信息继续往下找几个关键点。


发现CameraVideoCapture里也有切换相机的流程,切一步步往下走,能调用到上面我们hook过的X.HCF的switchCamera,那么我们就看看这里的switchCamera有没有调用吧。
•情况一:先滑动直播界面,再按home键,然后回到tiktok,再切换相机,此时status()函数返回1,走了后续Camera.open流程。


•情况二:先滑动界面,再切换相机,然后按home键,接着回到tiktok,最后切换相机,此时status()函数返回2,没走后续Camera.open流程。

从日志看switchCamera两种情况都走了,再结合switchCamera的源码看,源码里的status()函数的返回值决定了是否继续往下调用切换相机的流程,很遗憾的是,两种情况都出现了,而且都会卡住(为什么两个status值会不一样呢,这里先留个坑,最后来填)。这可把我难住了!
就在这时脑子突然开窍,既然画面卡住,那么必然有错误信息回调,果然一搜索CameraVideoCapture这个核心类有onError函数,毫不犹豫hook它,发现每次出错时,这个函数的错误码都会报-421错误(截图省略-421错误码的测试过程)。


错误信息非常明确的告诉我们是因为相机不支持缩放,导致的打开相机失败,那么至此相机卡住的直接原因找到了,但是还没找到为什么特殊的操作流程后会卡住,而正常的操作不会。于是乎继续跟着堆栈信息往上找。

发现走进了这里的流程,导致的相机进缩放流程,为了验证猜想,我决定在这个函数调用前,把message里的what字段改成2,让它不走这个流程,来看看是不是就不会导致界面卡住,于是就有了下面这段代码。

经过这一番篡改,果真随便怎么折腾,直播界面都不会卡住了。那么我只要找到那里给handler发送的这个message就应该离真想很近了。


然后找这个handler的sendMessage相关切message的what字段赋值为1的函数。

然后我找到了它,这个函数还和缩放相关,那就八九不离十了。


按之前的堆栈继续hook,发现卡住的时候这些方法确实都走了,而正常的时候是不走的,那么在X.Dvc的LIZ继续用抛堆栈大法。
得到如下两种堆栈:
•X.DCM接收到了touch事件,然后交由X.DCc这个类进行手势判断,发现是需要执行缩放的手势,于是执行了相机的缩放功能(由于我们业务原因需要隐藏底部NavigationBar,在Window底部上划会显示NavigationBar,上划的手势同时触发了控件的以为需要执行相机缩放),但是我们的虚拟摄像头又不支持缩放,导致打开相机失败,画面就卡在了之前相机拿到的最后一帧。

X.DCc类

X.DCO的invoke方法

•点击tiktok的切换相机Button,触发进入相机的缩放,这里就和我们之前的点击事件联系上了,红框部分就是补上了之前没关注但是最重要的相机缩放功能判断部分。


至此,我们已经把相机卡住的直接原因和根本原因都找到了,先手势再点击切换相机触发了进入相机缩放功能判断流程,由于我们的虚拟相机不支持缩放,导致打开相机失败,卡在相机的最后一帧(也可能是黑屏)。所以只要交付给framework组开发人员,让他们支持相机缩放相关功能就可以了。
接下来来填前面留下的坑,为什么退到后台会导致status函数的返回值不一样?
我们回到CameraVideoCapturer类,看看这个status()函数到底是个什么鬼!

发现他是父类ExternalVideoCapturer的函数,而且就是返回个字段,那再看看他那里进行了赋值。

通过AndroidStudio自带的字段读写索引功能,很容易找到父类里的start、stop和release函数,以及自身的onErrorOnHandler函数里(也就是我们之前抛-421错误堆栈的函数)。如果熟悉相机开发的同学应该知道,一般我们界面退到后台会释放相机,然后回到前台重新打开。那么接下来我们把这几个函数都hook一下,来验证猜想。

这里我多hook了一个onCaptureStarted函数,这个函数会调用父类的onStart函数,想看看是否会有调了onCaptureStarted但是没调父类的onStart的情况。然后还hook了CameraVideoCapturer自身重写的onStart和父类ExternalVideoCapturer的onStart函数。
下面是刚打开直播时的日志,此时status=1。

•情况一:先滑动直播界面,再按home键,然后回到tiktok,再切换相机,此时status()函数返回1,走了后续Camera.open流程。
这是直播退到后台时的调用,说明确实释放掉了,但是又调用了父类的onStart函数,那么此时的应该为2的status又变回了1。

接下来回到前台,此时一切正常status还是为1,而且重走了自身的onStart函数,相当于相机整个流程完全重开。

再接着切换相机第一次,这时的status还是为1,相机正常,紧接着我们发现了-421错误,发现又重走了父类的onStart函数,那么此时status还是1。

接下来切换相机画面卡住了,但还是走了父类的onStart。


以上就是第一种情况,由于每次切换相机都会抛完-421错误后,再调用父类ExternalVideoCapturer的start函数来重置status,也就造成了能调用Camera.open但是画面卡住的情况。
•情况二:先滑动界面,再切换相机,然后按home键,接着回到tiktok,最后切换相机,此时status()函数返回2,没走后续Camera.open流程。
前面流程就不贴了,直接开后面的流程记录。
退到后台status=1

回到前台status=1

切换相机第一次,画面正常status=1

切换相机第二次,在调用switchCamera之前先抛了一次-421的错误,导致status=2,然后switchCamera函数里判断status为2就被return,没有调用Camera.open函数,接下来也没有更多函数来重置status的状态,所以无论怎么切换相机,都无法执行到Camera.open(),除非tiktok退到后台,再回到前台。


以上就是第二钟情况。
关于open tiktok到此分享完毕,希望能帮助到您。
