Clear iPhone simulator cookies

前端 未结 6 1093
野趣味
野趣味 2021-02-06 10:35

I have an app that makes request to a REST service. Authentication is done using cookies. This already works.

What I have problems with is to test the case when the cook

相关标签:
6条回答
  • 2021-02-06 11:02

    YOU CAN RESET THE SIMULATOR

    • Launch the simulator.
    • Click the FIRST item on the "menu bar". It says "iOS Simulator"
    • A menu will appear. Go down three items to "Reset Contents and Settings"
    • Click "Reset" on the dialog which appears

    iPhone Simulator Reset Cookies

    0 讨论(0)
  • 2021-02-06 11:08

    Why not force cookie expiration to a low value for testing?

    That is exactly the same then.

    0 讨论(0)
  • 2021-02-06 11:15

    You can go to the home screen, then the settings app. Tap Safari, then scroll down to Clear Cookies. I'm not sure where the cookie file is on the filesystem, somewhere under /Developer/Platforms/iPhoneSimulator.platform I'd expect (see Matthew Frederick's answer).

    0 讨论(0)
  • 2021-02-06 11:19

    The cookies are located at:

    /Users/<YourUsername>/Library/Application Support/iPhone Simulator/<iOSversion>/Library/Cookies/Cookies.binarycookies

    You may need to quit out of Safari (in the fast app switching area) and then delete them so Safari won't have them in memory.

    0 讨论(0)
  • 2021-02-06 11:19

    You'll probably find better luck doing this in the SDK code rather than modifying file systems. Try:

        //Delete previous cookies
        NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
        for (NSHTTPCookie *each in [[[cookieStorage cookiesForURL:YOUR_URL] copy] autorelease]) {
            [cookieStorage deleteCookie:each];
        }
    
    0 讨论(0)
  • 2021-02-06 11:25

    I just used fseventer to inspect what happens to the iPhone Simulator filesystem when the "Clear Cookies and Data" button is tapped. These commands replicate that behavior, however, there is a trick:

    rm -rf "$HOME/Library/Application Support/iPhone Simulator/5.0/Library/Cookies"
    rm -rf "$HOME/Library/Application Support/iPhone Simulator/5.0/Library/Caches/Snapshots"
    rm -rf "$HOME/Library/Application Support/iPhone Simulator/5.0/Library/Caches/com.apple.mobilesafari"
    rm -rf "$HOME/Library/Application Support/iPhone Simulator/5.0/Library/WebKit"
    rm -rf "$HOME/Library/Application Support/iPhone Simulator/5.0/Library/Safari"
    

    The Simulator needs to be restarted. So, before manipulating the filesystem, I run this:

    killall "iPhone Simulator"
    
    0 讨论(0)
提交回复
热议问题