Tricking iOS into Animating Icons

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ม.ค. 2025

ความคิดเห็น • 388

  • @brycedotco
    @brycedotco  7 หลายเดือนก่อน +232

    Hey y'all - completely overwhelmed by the response to this. More videos on the way! ❤

    • @Hazem-Gt
      @Hazem-Gt 7 หลายเดือนก่อน +1

      Hi

    • @CapybaraBros-lc9xd
      @CapybaraBros-lc9xd 7 หลายเดือนก่อน +2

      can you try to make a video on how to do this on windows?

    • @nicholasvarner2706
      @nicholasvarner2706 6 หลายเดือนก่อน

      @@CapybaraBros-lc9xdyou can’t unfortunately; unless you were to access an internet hosted mac server and work through that. IOS development can only be done through Xcode, and Xcode is only available on macOS

  • @edorion6212
    @edorion6212 8 หลายเดือนก่อน +1963

    "oh nice, animated icons ! I guess this won't be too complicated"
    Opens IDA

    • @petethepete
      @petethepete 8 หลายเดือนก่อน +39

      💀

    • @Sound_.-Safari
      @Sound_.-Safari 7 หลายเดือนก่อน +14

      Underrated comment of the century

    • @brycedotco
      @brycedotco  7 หลายเดือนก่อน +137

      we like to make things complicated here

    • @bb010g
      @bb010g 7 หลายเดือนก่อน +11

      if you're not opening your decompiler are you even having a good time?

    • @Sound_.-Safari
      @Sound_.-Safari 7 หลายเดือนก่อน +21

      Takes me back to using IDA to remove the 7 day free trial limit from IDA (for science)

  • @steve_1507
    @steve_1507 8 หลายเดือนก่อน +2280

    I'm waiting for someone to port Bad Apple to this

    • @generimposter
      @generimposter 8 หลายเดือนก่อน +219

      Or running doom on iOS icon

    • @abc-oo8ce
      @abc-oo8ce 8 หลายเดือนก่อน +26

      @@generimposter How to control

    • @Crystal-bari
      @Crystal-bari 8 หลายเดือนก่อน

      ​@@generimposter or watching ht1t on the icon

    • @midnite59
      @midnite59 8 หลายเดือนก่อน

      @@abc-oo8cepress other icons!

    • @aw1lt
      @aw1lt 8 หลายเดือนก่อน

      @@abc-oo8cea widget

  •  7 หลายเดือนก่อน +404

    Came for the animated icons, stayed for the insane low level debugging skills. What a gem of a channel, please don't stop making videos, I binged all of them already.

    • @pta103
      @pta103 7 หลายเดือนก่อน +4

      You don't have a tag?

    • @xandergreer
      @xandergreer 3 วันที่ผ่านมา

      @@pta103i don’t think you were forced to make a tag when they got added to youtube

  • @_tomch
    @_tomch 8 หลายเดือนก่อน +291

    This channel is scratching an itch I genuinely didn’t even know I had

  • @stephn.
    @stephn. 8 หลายเดือนก่อน +230

    this is sick, I never thought this would be possible on something as proprietary as iOS. hope you get some more recognition cause after watching your other videos too you've become one of my favourite coding channels

    • @SrIgort
      @SrIgort 7 หลายเดือนก่อน

      I guess they wouldn't allow you to submit apps with this trick to AppStore though

    • @anianii
      @anianii 7 หลายเดือนก่อน +7

      Pretty much anything is possible on iOS as long as you get a valid code signature. Just won't get it approved for App Stores

  • @kreuner11
    @kreuner11 8 หลายเดือนก่อน +685

    How did they make the clock icon? I wish they let us

    • @denisblack9897
      @denisblack9897 8 หลายเดือนก่อน

      They will, when TikTok eats another half of our brain.
      They eventually will, 100%

    • @aw1lt
      @aw1lt 8 หลายเดือนก่อน +123

      or even cooler- the compass icon

    • @crackedEgg
      @crackedEgg 8 หลายเดือนก่อน +213

      It's not actually an icon, it's rendered by SpringBoard.

    • @mebeim
      @mebeim 8 หลายเดือนก่อน +46

      @@aw1lt wait what makes the compass icon special? Seems like a normal static icon to me.

    • @Cmanorange
      @Cmanorange 8 หลายเดือนก่อน +55

      @@mebeim rotate your phone on the short axis for a surprise

  • @decryptmars
    @decryptmars 8 หลายเดือนก่อน +255

    Hear me out: Original iPhoneOS TH-cam icon as an animated icon that plays an actual youtube video

    • @mcrich23
      @mcrich23 8 หลายเดือนก่อน +14

      Rick roll

    • @deepansharya1111
      @deepansharya1111 8 หลายเดือนก่อน +8

      Not possible, the approach in this video is not playing any animated video or gif in the app icon, it is replacing the icon with a sequence of images that looks like the icon is animated. TH-cam videos won’t work

    • @jackg_
      @jackg_ 8 หลายเดือนก่อน +28

      @@deepansharya1111 Possible, but pointlessly hard and pretty useless. You could *technically* download the video, separate it frame by frame.... too much work already.

    • @Amirka1719
      @Amirka1719 8 หลายเดือนก่อน +16

      @@deepansharya1111 , actualy, a video is nothing else that a bunch of icons/images changed fast enought not to notice)

    • @deepansharya1111
      @deepansharya1111 8 หลายเดือนก่อน

      @@Amirka1719 @jackg_ I knew that already & thanks for reaffirming. I mentioned it’s not possible because you can’t download the video in real-time and simultaneously convert each frame to an image and update it in the app icon, not to mention you’d also require youtube premium features to keep the background video playing at all times in case you hop back in the app and want the video to continue playing from the frame you last saw on app icon.

  • @JollyTVance
    @JollyTVance 8 หลายเดือนก่อน +209

    Mark my words: Apple will make this harder to do in an upcoming version of iOS, and then a few versions later they'll impmement this as an "innovative" new feature

    • @JoelGorostieta
      @JoelGorostieta 8 หลายเดือนก่อน +19

      Look at the clock app icon, it the current time and you can see the second hand moving. They must do something like this

    • @Brixster
      @Brixster 8 หลายเดือนก่อน +42

      @@JoelGorostietathe clock, compass, and calendar icons are rendered directly by Springboard. you could argue that it's sorta hardcoded into the OS and not really a specific function call that the clock app is uniquely tapping into

    • @klnsbl
      @klnsbl 8 หลายเดือนก่อน +1

      @@Brixstercompass too? it looks static to me

    • @SideLoadingScripts
      @SideLoadingScripts 8 หลายเดือนก่อน +15

      @@klnsbliOS 17 removed the moving compass.

    • @arden6725
      @arden6725 7 หลายเดือนก่อน

      they will absolutely remove access to the undocumented api in the next update

  • @_opa334
    @_opa334 7 หลายเดือนก่อน +27

    Nice video!
    One miniscule thing I wanted to note though is that the "LS" in the APIs does not mean "Lock Screen", it means "Launch Services" and the APIs communicate with the "lsd" daemon :P.

    • @brycedotco
      @brycedotco  7 หลายเดือนก่อน +15

      Serves me right for trying to guess an acronym on the fly - especially since we weren't even looking at the lock screen for this one 🤦 Thanks Lars / appreciate you!

  • @Avighna
    @Avighna 8 หลายเดือนก่อน +91

    This is a really cool video. You’ve highlighted the perks of knowing reverse engineering really well with excellent explanations. Good job, and I had fun watching this.

  • @hihilogic
    @hihilogic 8 หลายเดือนก่อน +7

    This is actually super cool, deserves more exposure ❤️

  • @worldadmin9811
    @worldadmin9811 8 หลายเดือนก่อน +11

    never dev'd on mac and watched the whole thing. super cool watch man!

  • @Run1nho
    @Run1nho 8 หลายเดือนก่อน +45

    Thank you for this video. Just binged all of them. The best reverse engineering iOS content I have seen on the internet 🚀

  • @iOSAcademy
    @iOSAcademy 8 หลายเดือนก่อน +21

    Great video!

  • @NSPhotoUsageDescription
    @NSPhotoUsageDescription 3 วันที่ผ่านมา +3

    This is soooo underrated. Subscribed and showed this channel to my colleagues. They also loved it. This reverse engineering is so cool.

    • @brycedotco
      @brycedotco  2 วันที่ผ่านมา +2

      Sending to coworkers means a ton - thank you! ❤️

  • @theocrandall
    @theocrandall 6 หลายเดือนก่อน

    Would love to see some live streams, so see the unedited thought process and problem solving. This kind of stuff is so fun to watch live when it is someone this skilled doing it.

  • @benmitchinson9831
    @benmitchinson9831 8 หลายเดือนก่อน +23

    Dude this is so cool.
    Great edit, was super satisfying to feel like I was problem solving with you, even though I've never written a line of swift. Great great stuff.
    Looking forward to checking out your other vids!

  • @kibbewater
    @kibbewater 8 หลายเดือนก่อน +35

    I think I just found the most underrated channel on TH-cam, great work!!

    • @GiovanniKody100
      @GiovanniKody100 7 หลายเดือนก่อน

      Overrated*

    • @thatcatthatalwayseatsyourchees
      @thatcatthatalwayseatsyourchees 4 วันที่ผ่านมา

      @@GiovanniKody100 definitly not overrated, the content is great and he only has 18k subs

    • @thatcatthatalwayseatsyourchees
      @thatcatthatalwayseatsyourchees 4 วันที่ผ่านมา

      @@GiovanniKody100 also i know you're trying to do some stupid i hate this youtuber thing, just remember that every time that you comment you give that person engagment and reach

  • @honeydoneapp
    @honeydoneapp 7 หลายเดือนก่อน

    This is nothing short of wizardry. Please PLEASE don't stop posting

  • @42xzero
    @42xzero 7 หลายเดือนก่อน

    Man this video deserves a million views!, subscribed

  • @GJToken
    @GJToken 7 หลายเดือนก่อน +26

    Its probably already been asked, but the iOS Clock app shows the current time as an icon, there must be another way to animate an icon somehow or they're just holding out the secret sauce for themselves

    • @Nightcaat
      @Nightcaat 7 หลายเดือนก่อน +9

      The clock hands and calendar
      date are rendered by SpringBoard

    • @bigdomix
      @bigdomix 6 หลายเดือนก่อน +1

      @Nightcaat , that’s probably the case, and the only way to do it the proper apple way we would need some sort of jailbreak tweak to do it

  • @ARYASHAH2
    @ARYASHAH2 7 หลายเดือนก่อน +11

    Why is no one is talking aboud the subscribe button animation if you are not in full screen. At 0:10 , it had a little rainbow border.

    • @octubre_lilaka
      @octubre_lilaka 2 หลายเดือนก่อน

      Actually yeah that's weirdly interesting. I'm surprised I haven't heard anybody else mention this before. I wonder how long it's been there

    • @existenceispain_geekthesiren
      @existenceispain_geekthesiren 3 วันที่ผ่านมา

      ​@@octubre_lilakaquite a while if I remember

    • @bob_kazamakis
      @bob_kazamakis 2 วันที่ผ่านมา +1

      Been that way for maybe a year. Sad that they will ”innovate” by adding cute animations no one asked for but not improve the platform at all in ways that matter.

  • @pietsous
    @pietsous 8 หลายเดือนก่อน +1

    This most inspiring and refreshing iOS development material out lately. Keep up the great work 👍🏼

  • @tjnangosha
    @tjnangosha 7 หลายเดือนก่อน

    Your debugging is over the top!

  • @AamitRudberg
    @AamitRudberg 7 หลายเดือนก่อน

    Its complicated af yet i understood every little bit. Youre good at this

  • @ivanvega9100
    @ivanvega9100 4 หลายเดือนก่อน

    Holy, this is one of the best videos I have ever seen and I have watched a lot throughout my life hahahah

  • @Kn0tzer
    @Kn0tzer 8 หลายเดือนก่อน +6

    i’ve created something similar to this in the shortcuts app except it changes your wallpaper to make it a video. never ended up finishing it since ios 17 puts a 50ms limit on how fast actions can run making the fps too low to be practical.
    (this is good though since you can kinda crash ios by changing between wallpaper states too fast, i learned the hard way)

  • @mish
    @mish 8 หลายเดือนก่อน

    Incredible technical deep dive. Great work mate!

  • @Flor-ian
    @Flor-ian 7 หลายเดือนก่อน

    This is awesome, I’m really glad I was served your channel. You’ve earned a new sub. Your explanation of faking the Boolean success was very interesting

  • @PouyaKary
    @PouyaKary 2 วันที่ผ่านมา

    This is soooooo beautiful I'm going to cry

  • @Archcorsair
    @Archcorsair 2 วันที่ผ่านมา

    So glad I stumbled upon your content. Long time software engineer, really enjoying your videos. Insta-subscribed.

  • @Zytron
    @Zytron 7 หลายเดือนก่อน

    Wish I'd seen this back when I was in Mobile App Dev class during the semester for IOS. I so would've shown this off in one of my app challenges

  • @henrysanecdotes5323
    @henrysanecdotes5323 7 หลายเดือนก่อน

    Holy crap this is insane. Thank you THANK YOU for making this video

  • @computerfan1079
    @computerfan1079 8 หลายเดือนก่อน

    First time I actually understand decomp. Great job!

  • @encodedlife
    @encodedlife 8 หลายเดือนก่อน +38

    * bows with respect

  • @MrNobodyX3
    @MrNobodyX3 7 หลายเดือนก่อน

    This is amazing and needs to be used more

  • @enderteck3273
    @enderteck3273 7 หลายเดือนก่อน +1

    This 100% should be in every Android Launcher, should be easy too.

    • @thatETTYT
      @thatETTYT 7 หลายเดือนก่อน +1

      IOS too, but Apple would NEVER give developers this much freedom, we're lucky they allow us to change the icons with this.

    • @enderteck3273
      @enderteck3273 7 หลายเดือนก่อน

      @@thatETTYT I know, that's why it would happen in Android Launchers first/only.
      Apple doesn't care about making good changes until their products are below average or until the EU gives them rules to follow (like the USB C port).

  • @mathiasvojtek3545
    @mathiasvojtek3545 8 หลายเดือนก่อน

    Impressive! Please upload more content like this

  • @buresdv
    @buresdv 8 หลายเดือนก่อน

    This is awesome! I love watching your videos, I'm sick of all the beginner tutorials. Keep it up!

  • @jiskac
    @jiskac 8 หลายเดือนก่อน +10

    Thank you! Love the intuitive yet technical detailled explanations of how to figure out block formats, as well as mentioning what happens under the hood 👩‍💻

  • @valeekatona
    @valeekatona 7 หลายเดือนก่อน

    as a junior dev, amazed on your knowledge. I want to learn swift and things like this, you should teach US from 0 to hero.

  • @iamsushi1056
    @iamsushi1056 5 วันที่ผ่านมา

    Higher level coding languages mess with my head, but you explained everything well

  • @justinwlin
    @justinwlin 8 หลายเดือนก่อน

    This insanely impressive. definitely one my newer programming ytbers to follow 🔥

  • @tonyjaimep
    @tonyjaimep 7 หลายเดือนก่อน

    Loved the video and the low-level debugging with such great explaining
    One thing that kind of OCD-d me out - your window management could be more consistent and visually appealing with a window manager line rectangle (free)

  • @RyanLynch1
    @RyanLynch1 7 หลายเดือนก่อน

    you fly through that low level debugging. incredible

  • @rezq2883
    @rezq2883 7 หลายเดือนก่อน

    This video is extremely beautiful… nothing but respect! I never knew messing with iOS was this accessible 😛 (with the right knowledge and tools…)

  • @LittleRicker
    @LittleRicker 5 วันที่ผ่านมา

    absolute wizard in the debugger

  • @tdrg_
    @tdrg_ 8 หลายเดือนก่อน

    Incredible work, thanks for the video and the source code!

  • @fabian3411
    @fabian3411 8 หลายเดือนก่อน

    This is genuinely so impressive

  • @bigmanentertainment1803
    @bigmanentertainment1803 7 หลายเดือนก่อน

    iOS programmers learning to code perfectly and practice all possible loopholes known to mankind, just to get animations on an icon.

  • @mobiledevlife
    @mobiledevlife 8 หลายเดือนก่อน

    This is awesome, haha! 🎉 As a mobile developer myself, I really enjoy watching this kind of content, and I didn't know it was possible 😂

  • @YoYoBobbyJoe
    @YoYoBobbyJoe 4 วันที่ผ่านมา +18

    Everyone's talking about the clock app, but here's one nobody knows about: When you're downloading/installing a new update, the gears of the Settings app all spin.

  • @gFamWeb
    @gFamWeb 7 หลายเดือนก่อน

    I built my own setup for calling private API's in Swift that doesn't require a header file. Instead, though, you have to define the function shape as a typealias. But it works!

    • @gFamWeb
      @gFamWeb 7 หลายเดือนก่อน

      Granted, I'm more of a security researcher than a dev, so it may not really be useful in these cases. My method dynamically links at runtime, which may have performance issues.

  • @timothybradford8216
    @timothybradford8216 3 หลายเดือนก่อน +1

    Waaay over my head. Sorry for the bad click through rate.

  • @kanauvist
    @kanauvist 7 หลายเดือนก่อน +1

    wow that is amazing. great video

  • @ondrejkorol9595
    @ondrejkorol9595 8 หลายเดือนก่อน +1

    Wow! Loving this video!

  • @Pfahli94
    @Pfahli94 7 หลายเดือนก่อน

    Now I want to watch shrek inside an icon on my homescreen.

  • @ashadsaeed2514
    @ashadsaeed2514 6 หลายเดือนก่อน

    keep making videos my guy 😊

  • @carterpape
    @carterpape 7 หลายเดือนก่อน

    holy shit bro I NEED more Apple OS development and reverse engineering videos from you

  • @LiamHighducheck
    @LiamHighducheck 7 หลายเดือนก่อน +2

    Do you know how to stop iOS from autopausing music when you enter certain apps?

  • @bb010g
    @bb010g 7 หลายเดือนก่อน

    Great introduction to reversing! Very enjoyable. I'm a bit envious of how IDA handles those blocks; Binary Ninja requires more manual work to get them decently readable. :)

  • @illuminum8576
    @illuminum8576 7 หลายเดือนก่อน +5

    That workaround is actually amazing, thank you YT algorithm for finally recommending me a channel I want to watch

  • @theoldknowledge6778
    @theoldknowledge6778 8 หลายเดือนก่อน +5

    You can actually display informations with this (like the clock app displays the current time) cool!

  • @gospodbog
    @gospodbog 7 หลายเดือนก่อน

    Before this video I dared to think I was a senior iOS dev

  • @grassified.
    @grassified. 8 หลายเดือนก่อน

    this is sick!! subbed almost immediately :)

  • @andrewarnopoulos1819
    @andrewarnopoulos1819 8 หลายเดือนก่อน +4

    Would you be able to achieve the same result with an animated png and calling the private API?

  • @protodimbo
    @protodimbo 7 หลายเดือนก่อน

    i need a whole course about ios app reversing

  • @xandergreer
    @xandergreer 3 วันที่ผ่านมา

    does anybody remember when the settings app icon would spin the gears while you were updating ios

  • @smotch7533
    @smotch7533 8 หลายเดือนก่อน +2

    Why would I subscribe before watching the video.
    edit after watching: This was awesome, subbed.

  • @danielridzon
    @danielridzon 8 หลายเดือนก่อน

    Nice work 🙌 Great showcase of the more advanced debugging capabilities of using lldb and decompiler
    It would be funny to see the reaction of the Apple Review team 😅

  • @HeyNoah
    @HeyNoah 8 หลายเดือนก่อน

    This is awesome man! 🙌

  • @alexarze9769
    @alexarze9769 6 หลายเดือนก่อน

    This is a beautiful breakdown! Unrelated… what is the map decor in the background??

  • @arjundureja
    @arjundureja 8 หลายเดือนก่อน

    Amazing. I could see production apps on macOS using this to update the app icon in the background

  • @zuman_one
    @zuman_one 7 หลายเดือนก่อน

    This got me interested in iOS development

  • @owRekssjfjxjxuurrpqpqss
    @owRekssjfjxjxuurrpqpqss 7 หลายเดือนก่อน

    Can’t imagine how annoying it would be to have dozens of icons moving around constantly

  • @isurujn
    @isurujn 7 หลายเดือนก่อน

    This is so cool. I always wanted to see how reverse engineering private iOS APIs looked like.

  • @edgiestnickel89
    @edgiestnickel89 7 หลายเดือนก่อน

    What about the way the clock app changes its icon based on the time of day

  • @SWinxyTheCat
    @SWinxyTheCat 7 หลายเดือนก่อน

    wow that's sick! quite involved trickery.

  • @sherlockluk2225
    @sherlockluk2225 8 หลายเดือนก่อน +1

    you should do more of these Private API videos

  • @lampree
    @lampree 8 หลายเดือนก่อน

    This is super cool and a side of iOS I wish I knew more about

  • @e.6z1
    @e.6z1 7 หลายเดือนก่อน

    woah that's neat! subscribed :3

  • @Iridium_Pixel
    @Iridium_Pixel หลายเดือนก่อน

    Wait… How have you made that YT app ?! TH-cam API ? Modification of the original app ?
    I’m a little confused (because Xcode is confusing me) but it’s a good video !
    You earned a sub.

  • @ArchistYT
    @ArchistYT 7 หลายเดือนก่อน

    Dude this is legit 🙌 knowing me with my 0 knowledge of scripting, I probably would have tried this by using the shortcuts app 😅

  • @anotherguycalledsmith
    @anotherguycalledsmith 8 หลายเดือนก่อน

    You are just on another level, my friend ;-)

  • @slash.9882
    @slash.9882 6 หลายเดือนก่อน

    Very interesting video, ill try it out. ty

  • @Qiuvox
    @Qiuvox 7 หลายเดือนก่อน

    Do it for android. Must be way easier to make an icon pack tbh

  • @bobgodwinx
    @bobgodwinx 8 หลายเดือนก่อน

    😂 the best part of the video is when he smiled after destroying Apple engineers... 😂 23:11

  • @joshofosho3
    @joshofosho3 8 หลายเดือนก่อน +4

    Can you turn this into a jailbreak tweak? 👀

  • @scj643
    @scj643 8 หลายเดือนก่อน

    I have extracted the dyld cache multiple times to find privacy issues and now I use Hopper

    • @scj643
      @scj643 8 หลายเดือนก่อน

      Though using Frida for finding functions is easier

    • @bb010g
      @bb010g 7 หลายเดือนก่อน

      Binary Ninja can also handle the dyld cache.

  • @ccf_1004
    @ccf_1004 7 หลายเดือนก่อน

    Apple: "Nooo, you can't make animated app icons, that goes against our UI design principles!"
    iOS Devs: :trollface:

  • @XKurrA
    @XKurrA 7 หลายเดือนก่อน

    I don't even know why I'm even watching this, I'm never going to daily drive an iPhone

  • @山田ちゃん
    @山田ちゃん 8 หลายเดือนก่อน +2

    Idk iphone development or even android… I came from older OS but you can just call private api in iOS? Pls tell me this is only possible in debug build and not release build. I thought iOS had sandbox that prevents accessing anything not declared by a capability which is known by the OS

    • @KebabTM
      @KebabTM 8 หลายเดือนก่อน +1

      Every framework gets loaded uniquely into an app just like DLLs on Windows, so you can make calls to them in the scope of the app (doesn’t affect anything outside of the app). The app icon is contained within the sandbox.

    • @dealloc
      @dealloc 8 หลายเดือนก่อน

      Yes you can, though submitting an app using private APIs for App Store is an entirely different conversation :)

  • @valeekatona
    @valeekatona 7 หลายเดือนก่อน +5

    are u working for Apple? Or how tf someone can be this good? level God.

  • @Blarnix
    @Blarnix 7 หลายเดือนก่อน

    This is fantastic. Wow.

  • @MartinDerTolle
    @MartinDerTolle 8 หลายเดือนก่อน +1

    Can you play bad apple on the home screen using app icons?

  • @flamyf
    @flamyf 7 หลายเดือนก่อน

    I guess if you call private system API you won't pass App Store verification, if someone wanted to make it an app

  • @kitchenarbabvlog
    @kitchenarbabvlog 7 หลายเดือนก่อน +1

    Very Good Excellent 👍 Sharing 👏 good work thanks for this video 📸 greetings 👍

  • @xorlop
    @xorlop 7 หลายเดือนก่อน

    Please make more videos and blog posts! I have been watching and rewatching all of your videos trying to absorb all the crazy knowledge you are sharing. I am also enjoying your blog posts. You are opening my eyes on how anything can be reversed, modded, and changed :D!!

  • @afkplayer665
    @afkplayer665 2 วันที่ผ่านมา

    Now we wait until someone plays doom on IOS app icon