{"action":"closed","issue":{"url":"https://api.github.com/repos/appium/appium/issues/6307","repository_url":"https://api.github.com/repos/appium/appium","labels_url":"https://api.github.com/repos/appium/appium/issues/6307/labels{/name}","comments_url":"https://api.github.com/repos/appium/appium/issues/6307/comments","events_url":"https://api.github.com/repos/appium/appium/issues/6307/events","html_url":"https://github.com/appium/appium/issues/6307","id":141924098,"number":6307,"title":"[Appium 1.5] Driver noReset | fullReset combinations yield different results from previous release for real device","user":{"login":"nmeason","id":17731762,"avatar_url":"https://avatars.githubusercontent.com/u/17731762?v=3","gravatar_id":"","url":"https://api.github.com/users/nmeason","html_url":"https://github.com/nmeason","followers_url":"https://api.github.com/users/nmeason/followers","following_url":"https://api.github.com/users/nmeason/following{/other_user}","gists_url":"https://api.github.com/users/nmeason/gists{/gist_id}","starred_url":"https://api.github.com/users/nmeason/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nmeason/subscriptions","organizations_url":"https://api.github.com/users/nmeason/orgs","repos_url":"https://api.github.com/users/nmeason/repos","events_url":"https://api.github.com/users/nmeason/events{/privacy}","received_events_url":"https://api.github.com/users/nmeason/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2016-03-18T16:59:07Z","updated_at":"2016-11-16T03:23:56Z","closed_at":"2016-11-16T03:23:56Z","body":"## The problem\n\nThere currently does not seem to be a way to have a full reset of the app on driver creation, without the app being removed after the session. In previous releases, you could set the fullReset/noReset flag to a combination that would allow this (which may have been a bug), but was useful. With the latest builds from source you no longer are able to do so.\n## Environment\n- Appium version (or git revision) that exhibits the issue: 1.5 (android-driver v1.7.6 | ios-driver v1.8.12)\n- Last Appium version that did not exhibit the issue (if applicable): 1.4.16\n- Desktop OS/version used to run Appium: Mac OS X Yosemite 10.10.5\n- Node.js version (unless using Appium.app|exe): 5.9.0\n- Mobile platform/version under test: Android/IOS\n- Real device or emulator/simulator: Real devices\n- Appium CLI or Appium.app|exe: Appium CLI\n## Details\n\nIn previous versions the following command combinations yielded the below results:\nfullReset=false | noReset=true ==> no changes to app state\nfullReset=false | noReset=false ==> resets app state by clearing cache (android)\nfullReset=true | noReset=true ==> uninstalls app | reinstalls app | leaves app installed on session end\nfullReset=true | noReset=false ==> uninstalls app | reinstalls app | removes app on session end\nNote: Similar behavior for iOS with exception of reset cache\n\nIn the current release from source I'm seeing the following results for android:\nfullReset = false | noReset = true  ==>  no changes to app state\nfullReset = false | noReset = false  ==>  reset current app state by clearing cache (android)\nfullReset = true | noReset = true ==> no changes to app state\nfullReset = true  | no Reset = false  ==>  uninstalls app | reinstalls app | removes app on session end\nNote: Seeing different behavior for iOS but think there are some outstanding bugs around flags.\n\nIn the end I would like to be able to do the following: I could achieve 1,2,3,5 in previous release. I was wondering if there was a workaround for this or a rework of flags that need to happen to achieve some of the below for both android/iosdriver? Thanks for your help!\n1) Pass in flags to uninstall/reinstall app and leave it on the device after session end. Can't seem to do that anymore when creating driver.\n2) Pass in flags to uninstall/reinstall app and have it removed on session end.\n3) Pass in flags to reset app via cache.\n4) Pass in flags to uninstall app right from the start if it is detected as installed. \n5) Pass in flags to leave app state untouched.\n## Link to Appium logs\n## Code To Reproduce Issue [ Good To Have ]\n\n```\n    DesiredCapabilities capabilities = new DesiredCapabilities();\n    capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, device.name);\n    capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, device.platform);\n    capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, device.platformVersion);\n    capabilities.setCapability(MobileCapabilityType.UDID, device.udid);\n    capabilities.setCapability(MobileCapabilityType.APP, device.appPath);\n    capabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, 600);\n    capabilities.setCapability(MobileCapabilityType.FULL_RESET, fullReset);\n    capabilities.setCapability(MobileCapabilityType.NO_RESET, noReset);\n```\n"}}
{"actor":{"display_login":"rkavalap"}}