Tricking iOS into Animating Icons

Поділитися
Вставка
  • Опубліковано 26 тра 2024
  • Let's create the wildest home screen effects that iOS has ever seen!
    Demo Project: github.com/bryce-co/AnimatedA...
    Text post for this video: bryce.co/animated-app-icons/
  • Наука та технологія

КОМЕНТАРІ • 359

  • @brycedotco
    @brycedotco  Місяць тому +180

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

    • @Hazem-Gt
      @Hazem-Gt Місяць тому +1

      Hi

    • @anushtabhtv
      @anushtabhtv Місяць тому

      Hey! Can you make the GitHub icon convert into the Pedro Pedro Racoon?

    • @CapybaraBros-lc9xd
      @CapybaraBros-lc9xd Місяць тому +2

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

    • @nicholasvarner2706
      @nicholasvarner2706 16 днів тому

      @@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 Місяць тому +1634

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

    • @petethepete
      @petethepete Місяць тому +34

      💀

    • @Sound_.-Safari
      @Sound_.-Safari Місяць тому +12

      Underrated comment of the century

    • @brycedotco
      @brycedotco  Місяць тому +92

      we like to make things complicated here

    • @bb010g
      @bb010g Місяць тому +9

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

    • @Sound_.-Safari
      @Sound_.-Safari Місяць тому +15

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

  • @steve_1507
    @steve_1507 Місяць тому +2043

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

    • @generimposter
      @generimposter Місяць тому +193

      Or running doom on iOS icon

    • @abc-oo8ce
      @abc-oo8ce Місяць тому +24

      @@generimposter How to control

    • @Bari-gd
      @Bari-gd Місяць тому

      ​@@generimposter or watching ht1t on the icon

    • @midnite59
      @midnite59 Місяць тому

      @@abc-oo8cepress other icons!

    • @aw1lt
      @aw1lt Місяць тому

      @@abc-oo8cea widget

  •  Місяць тому +313

    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 Місяць тому +4

      You don't have a tag?

    •  Місяць тому

      real

  • @_tomch
    @_tomch 2 місяці тому +256

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

  • @stephn.
    @stephn. Місяць тому +204

    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 Місяць тому

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

    • @anianii
      @anianii Місяць тому +4

      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

  • @GJToken
    @GJToken Місяць тому +18

    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 26 днів тому +3

      The clock hands and calendar
      date are rendered by SpringBoard

    • @Exilorian
      @Exilorian 17 днів тому

      @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

  • @kreuner11
    @kreuner11 Місяць тому +629

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

    • @denisblack9897
      @denisblack9897 Місяць тому

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

    • @aw1lt
      @aw1lt Місяць тому +108

      or even cooler- the compass icon

    • @crackedEgg
      @crackedEgg Місяць тому +186

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

    • @mebeim
      @mebeim Місяць тому +41

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

    • @Cmanorange
      @Cmanorange Місяць тому +48

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

  • @DanteS-119
    @DanteS-119 Місяць тому +32

    Jesus I didn't expect to delve into assembly here , very cool...

  • @Avighna
    @Avighna Місяць тому +89

    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.

  • @Run1nho
    @Run1nho 2 місяці тому +43

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

  • @decryptmars
    @decryptmars 2 місяці тому +225

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

    • @mcrich23
      @mcrich23 2 місяці тому +13

      Rick roll

    • @deepansharya1111
      @deepansharya1111 2 місяці тому +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. UA-cam videos won’t work

    • @jackg_
      @jackg_ 2 місяці тому +27

      @@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 2 місяці тому +16

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

    • @deepansharya1111
      @deepansharya1111 2 місяці тому

      @@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.

  • @_opa334
    @_opa334 Місяць тому +11

    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  Місяць тому +5

      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!

  • @kibbewater
    @kibbewater Місяць тому +30

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

  • @illuminum8576
    @illuminum8576 Місяць тому +5

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

  • @jiskac
    @jiskac 2 місяці тому +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 👩‍💻

  • @benmitchinson9831
    @benmitchinson9831 2 місяці тому +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!

  • @hihilogic
    @hihilogic 2 місяці тому +7

    This is actually super cool, deserves more exposure ❤️

  • @valeekatona
    @valeekatona Місяць тому +4

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

  • @JollyTVance
    @JollyTVance Місяць тому +181

    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 Місяць тому +14

      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 Місяць тому +39

      @@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 Місяць тому

      @@Brixstercompass too? it looks static to me

    • @SideLoadingScripts
      @SideLoadingScripts Місяць тому +12

      @@klnsbliOS 17 removed the moving compass.

    • @arden6725
      @arden6725 Місяць тому

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

  • @HD-jm4em
    @HD-jm4em Місяць тому

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

  • @worldadmin9811
    @worldadmin9811 Місяць тому +10

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

  • @pietsous
    @pietsous 2 місяці тому +1

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

  • @encodedlife
    @encodedlife 2 місяці тому +38

    * bows with respect

  • @buresdv
    @buresdv 2 місяці тому

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

  • @theoldknowledge6778
    @theoldknowledge6778 Місяць тому +5

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

  • @mish
    @mish Місяць тому

    Incredible technical deep dive. Great work mate!

  • @theocrandall
    @theocrandall 23 дні тому

    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.

  • @computerfan1079
    @computerfan1079 Місяць тому

    First time I actually understand decomp. Great job!

  • @Kn0tzer
    @Kn0tzer Місяць тому +5

    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)

  • @ondrejkorol9595
    @ondrejkorol9595 2 місяці тому +1

    Wow! Loving this video!

  • @tdrg_
    @tdrg_ Місяць тому

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

  • @iOSAcademy
    @iOSAcademy 2 місяці тому +20

    Great video!

  • @mathiasvojtek3545
    @mathiasvojtek3545 Місяць тому

    Impressive! Please upload more content like this

  • @el.blanco8961
    @el.blanco8961 Місяць тому

    I feel like this is going to be the future of app icons and brand logos, flowing, moving, more eye catching icons or advertisements placed throughout all storefronts or even in side advertising the products themselves.

  • @MrNobodyX3
    @MrNobodyX3 Місяць тому

    This is amazing and needs to be used more

  • @42xzero
    @42xzero Місяць тому

    Man this video deserves a million views!, subscribed

  • @tjnangosha
    @tjnangosha Місяць тому

    Your debugging is over the top!

  • @AamitRudberg
    @AamitRudberg Місяць тому

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

  • @justinwlin
    @justinwlin Місяць тому

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

  • @grassified.
    @grassified. Місяць тому

    this is sick!! subbed almost immediately :)

  • @henrysanecdotes5323
    @henrysanecdotes5323 Місяць тому

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

  • @mobiledevlife
    @mobiledevlife 2 місяці тому

    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 😂

  • @HeyNoah
    @HeyNoah 2 місяці тому

    This is awesome man! 🙌

  • @Flor-ian
    @Flor-ian Місяць тому

    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

  • @fabian3411
    @fabian3411 Місяць тому

    This is genuinely so impressive

  • @Zytron
    @Zytron Місяць тому

    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

  • @slash.9882
    @slash.9882 7 днів тому

    Very interesting video, ill try it out. ty

  • @kanauvist
    @kanauvist Місяць тому +1

    wow that is amazing. great video

  • @enderteck3273
    @enderteck3273 Місяць тому +1

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

    • @thatETTYT
      @thatETTYT Місяць тому +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 Місяць тому

      @@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).

  • @rezq2883
    @rezq2883 Місяць тому

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

  • @anotherguycalledsmith
    @anotherguycalledsmith Місяць тому

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

  • @bb010g
    @bb010g Місяць тому

    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. :)

  • @danielridzon
    @danielridzon Місяць тому

    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 😅

  • @lampree
    @lampree Місяць тому

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

  • @tonyjaimep
    @tonyjaimep Місяць тому

    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)

  • @Blarnix
    @Blarnix Місяць тому

    This is fantastic. Wow.

  • @kryptonian69
    @kryptonian69 Місяць тому +1

    watch apple steal this and showcase it as "worlds first innovative animated icons"

  • @Pfahli94
    @Pfahli94 Місяць тому

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

  • @ashadsaeed2514
    @ashadsaeed2514 20 днів тому

    keep making videos my guy 😊

  • @andrewarnopoulos1819
    @andrewarnopoulos1819 2 місяці тому +4

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

  • @RyanLynch1
    @RyanLynch1 Місяць тому

    you fly through that low level debugging. incredible

  • @SWinxyTheCat
    @SWinxyTheCat Місяць тому

    wow that's sick! quite involved trickery.

  • @e.6z1
    @e.6z1 Місяць тому

    woah that's neat! subscribed :3

  • @LiamHighducheck
    @LiamHighducheck Місяць тому +2

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

  • @arjundureja
    @arjundureja 2 місяці тому

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

  • @Kdkjdjewerdnxa
    @Kdkjdjewerdnxa Місяць тому

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

  • @sherlockluk2225
    @sherlockluk2225 Місяць тому +1

    you should do more of these Private API videos

  • @alexarze9769
    @alexarze9769 11 днів тому

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

  • @carterpape
    @carterpape Місяць тому

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

  • @protodimbo
    @protodimbo Місяць тому

    i need a whole course about ios app reversing

  • @Wikinger18
    @Wikinger18 Місяць тому

    So cool very nice channel in general

  • @gospodbog
    @gospodbog Місяць тому

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

  • @bigmanentertainment1803
    @bigmanentertainment1803 Місяць тому

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

  • @zuman_one
    @zuman_one Місяць тому

    This got me interested in iOS development

  • @mredig
    @mredig 2 місяці тому +2

    Broke my phone screen smashing that subscribe button

  • @valeekatona
    @valeekatona Місяць тому

    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.

  • @MartinDerTolle
    @MartinDerTolle Місяць тому +1

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

  • @joshofosho3
    @joshofosho3 2 місяці тому +4

    Can you turn this into a jailbreak tweak? 👀

  • @smotch7533
    @smotch7533 Місяць тому +1

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

  • @king_james_official
    @king_james_official Місяць тому

    cool, how does the clock icon work though? is it some kind of elevated app that doesn't have to go through the icon api?

  • @IH0kN3m
    @IH0kN3m 2 місяці тому

    Dude, that’s insane

  • @isurujn
    @isurujn Місяць тому

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

  • @jeanysergeimezarodriguez8629
    @jeanysergeimezarodriguez8629 Місяць тому

    Thanks for the great lecture! Which version of IDA are you using? Is it possible to dissemble the dyld_shared_cache on the free version of IDA, I'm trying to make it work but seems pro version is needed. I just want to confirm with you.

  • @blastygamez
    @blastygamez Місяць тому

    Awesome!

  • @disgruntleddev
    @disgruntleddev Місяць тому +6

    What sorcery is this…

  • @rickybobbyledeuxieme
    @rickybobbyledeuxieme 2 місяці тому

    This is incredible! How in the world does one start to learn any of the tricks he used here?!

  • @Flaming-Wolf
    @Flaming-Wolf Місяць тому

    Wow! This is so cool! Do you think the same effect is possible to replicate on Samsung phones?

  • @ortatherox
    @ortatherox 2 місяці тому

    nice work

  • @n3x404
    @n3x404 Місяць тому

    Big Brain time, amazing video :)

  • @gFamWeb
    @gFamWeb Місяць тому

    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 Місяць тому

      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.

  • @HarshPatel-if6ly
    @HarshPatel-if6ly 2 місяці тому

    Woo you are awesome 🙌

  • @edgiestnickel89
    @edgiestnickel89 Місяць тому

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

  • @bluebearfinn
    @bluebearfinn Місяць тому

    sick, howd you get the app on the phone?

  • @dominicus9891
    @dominicus9891 Місяць тому

    I thought you were going to use the private API the clock app uses to animate the hands of the icon.

  • @slendi9623
    @slendi9623 Місяць тому

    this is so cool

  • @pipikakachu
    @pipikakachu Місяць тому

    Can you alter apps to make them appear in CARPLAY?

  • @ccf_1004
    @ccf_1004 Місяць тому

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

  • @jodp
    @jodp Місяць тому

    Instant subscribe!

  • @pinguluk1
    @pinguluk1 Місяць тому

    But how did you change the Github app icon especially?