Hacker Newsnew | past | comments | ask | show | jobs | submit | restes's commentslogin

The iOS Simulator consists of (some of) the userspace components of iOS compiled to run on macOS. This would be a full iPhone image running as-is via virtualization.


That explains the difference, but what's the purpose?


The simulator doesn't have a camera. The android emulator allows to configure the camera and use a picture, it's very handy to test your qr/barcode reader without needing to use a physical device. Maybe this also allows to use an image as camera?


It's useful for security research since you can do kernel debugging and inspection of the device not possible in the simulator.

As others pointed out it's also useful for e.g. click/spam farms which need a "real" iPhone.


You can test your application, game, website without a physical phone?


Can do that with the simulator too


Running on ported userspace components, with a shim, isn't the same as running on the OS in itself.

That really matters, sometimes.

But not the vast majority of the time.

(source: been coding iOS since pre-SDK iPhone OS 1.0)


Can you give some examples of where it matters? I'm genuinely curious.


Testing AR apps, or any app that relies on hardware you can't simulate easily.

https://www.youtube.com/watch?v=T43b5ywnYpo


It’s been years but I ran into a problem with a notification extension years ago. Worked fine on simulator, not on device. Turned out it was because I was using a HEIF image and (I think) the on-device extension was trying to use hardware decoding and didn’t have access to it. Meanwhile the simulator had no such sandboxing restrictions.

The difference doesn’t matter until it does, and then it’s infuriating to work out what’s going on.


> The difference doesn’t matter until it does, and then it’s infuriating to work out what’s going on.

I love this quote, reminds me how annoying it can be when something isn’t reproducible locally… only in production…


Last I checked, VPN network extensions wouldn't run in the simulator.


Is the simulator faster than this? I would suspect so.


I have had instances where the app runs fine on the simulator but crashes on the device. This might solve that.


You cannot run Network Extensions on the simulator


If functional, you can download apps from the App Store, sign in to iCloud.. probably do a bunch of agentic stuff as if you had a real device


Looks like apple services compatibility is not currently supported for this [0]

[0] https://github.com/Lakr233/vphone-cli/discussions/175


If you read a bit further, there's a jailbroken variant that has Sileo and Trollstore installed, so you can run whatever IPAs


Where?

Edit: ah now I see, in the main readme under heading Firmware Variants. https://github.com/Lakr233/vphone-cli#firmware-variants


Exactly. It means it cannot download apps from the App Store or use Apple services and Apple knows this deliberate limitation.


Spam. Click farms. Etc.


It would also make testing far easier. I got bit with something that failed on real life iPhones with language set to es_US that worked fine on the simulator.


oh. is this why icloud spam texts are running wild now


No, it’s just trivial to generate iCloud email addresses that won’t get picked up by spam filter.


>People are having beachballs on machines with 32GB and more.

Well, sure, because the beachball means the main thread is hung, and that can happen for many reasons unrelated to memory pressure.


I don’t understand. Are you claiming the actual results of Musk’s work here were good?


I think rather he's saying that Musk loudly declared he was slashing government waste and firing do-nothing bureaucrats, and the people who supported him never really bothered to see if that was the case or not.


I assume they meant that the site is terrible in Firefox, not that Firefox is terrible.


Yup, and I meant that while the site indeed works terribly in Firefox, it also works terribly in Chrome.


Hey there, I'm the marketer on this project. I'd love to know which browser version you're on so we can find the right fix. We thoroughly tested on all major browsers but only the more recent versions so surprised that it's broken on Chrome too. Do let me know and we'll take a look. Thanks!


I'm using the most recent version of Chrome unstable and Firefox Developer Edition. I think that what most people in this thread are saying is not that there's are bugs, but that the UX of the website is so nonstandard and so confusing that it feels broken.

Two examples: - each page ("card"?!) opens in what feels like a modal dialog, but clicking outside of it doesn't close it like with normal dialogs. you must click on the tiny X button. - Moving between cards is insanely annoying. "Next card" but no "Previous card"?! The mere fact you figured you should add a "Grid view" shows that you realized how bad this is.

my 2 cents: instead of requiring users to do like 10 clicks to go from one PAGE to another, just put the menu on the left side with the title of the different pages and let people move between them with ONE click.


Fair, but also where != what


> You essentially can make money buying something.

Well, only if you can earn more over 12 months than the asset you bought depreciated. I think a better way to look at it is that you can earn a small discount.


With the 0% interest rate in Apple’s Pay Later, if you can’t earn more than that you have a gambling problem.


The parent specifically mentions depreciation which you don't seem to be accounting for by only considering the interest rate of the loan.


Depreciation costs should already be factored into the capital investment. You should not be accounting for it twice.


And completely ignores the utilisation of the product being bought.


Fine, but the depreciation is not all that significant. Hypothetically, there is absolutely nothing stopping you from buying the device with Apple Pay Later for 0% interest, selling it unopened for full (or close to full) value, and making money from arbitrage that way.

As a result, depreciation can be written off, I think, since I would argue if you do buy it and keep it you’ve gotten value from it even if it isn’t cash.


I'm not sure this will fly, or at least I think it depends on the issuer and the law in the particular jurisdiction of the buyer. I remember reading in the fine print of one issuer of BNPL in my country a statement that the buyer does not have full ownership of the product until after payment of the final installment of the loan has been received and confirmed by the issuer, implying that the product cannot be sold to a third party until the loan has been repaid in full. I am unsure if such a statement has any legal force but buyer beware.


Y'all, the original post was edited, but the quoted bit about being able to make money by buying things was indeed wrong, you don't end up with more money by buying stuff this way. GP seems to have edited their post to talk about buying at a discount instead, as was suggested by this post you're all now bagging on.


>formerly TextEdit IIRC

TextWrangler. TextEdit is the editor built in to macOS.


And TextWrangler formerly was BBEdit Lite (https://en.wikipedia.org/wiki/BBEdit#Freeware_versions)


And now there’s just BBEdit, which is free, but has some features turned off unless you pay. I use the free version, and it is powerful!


Something ironic about a "bare bones" editor getting a 'lite' edition.


TextEdit is similarly old to BBEdit, just a little younger—- shipping with OPENSTEP in 1996.


That’s the one!


Since the mods’ handles are known, isn’t this pseudonymous rather than anonymous?


This and the parent's argument are just whataboutism.


Given the same crime, should justice and sentencing be arbitrary or equivalent? Contextualized to the Nixonian origins of the "war" on "drugs," the US socioeconomic sentencing disparities are the common element linking all drug convictions, from the streets of Baltimore/Camden/Detroit to any one of the Sacklers palatial manors.


Whataboutism is a valid concern when discussing justice imo


Disagree. An outcome is "just or not just" for me independent of if you got the same outcome. I believe that you meant "fair".


If you take "just" to mean "justifiable", sure. That meaning doesn't really make sense in the context of this discussion though, so yes I am invoking one of the definitions related to fairness.


>why can't I specify, and have the compiler yell at me if I don't properly handle, "this pointer may never be null"

You can do so easily. A reference is a pointer that is never null.


> A reference is a pointer that is never null.

This isn't even theoretically true:

    void blah(int &x) { x++; }

    int main() {
      int *x = NULL;
      blah(*x);
    }
You can definitely write a smart pointer that more or less provides some kind of guarantee about this (with a combo of runtime checks and typefoo) but references only provide a guarantee that they are not statically initializable to null, which is very different.


Compilers are free to assume x is non-null at the time it’s dereferenced, so isn’t it true by definition? Do you have an example that doesn’t rely on undefined behavior?


"Compilers are free to assume" is a fine thing for like, a loop, but the compiler isn't free to assume you didn't mean to dereference the reference in the code snippet I posted, it's just free to not check before it does.

So it will crash, whether that's undefined behaviour or not. The thing at issue here is that other languages have reference types that are more strictly statically guaranteed to be non-null. My point is that references are not a substitute for those, because holding them wrong is not only easy, it's extremely likely to happen in code of any reasonable complixity that mixes pointers and references (ie. almost all production C++ code).


C++ isn't C.


The GP was referring to C++

>I would almost never write C++ …

Edit: nevermind, I missed the point! GP is saying he wouldn’t write C++ if C supported these features.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: