# Error: Bad app,cannot find the apk path

**URL:** <https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566>\
**Category:** Issues/Bugs\
**Created:** [March 23, 2017, 6:42am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566 "2017-03-23T06:42:57Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![IJU2134](https://discuss.appium.io/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@IJU2134](https://discuss.appium.io/u/IJU2134)\
**Post date:** [March 23, 2017, 6:42am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/1 "2017-03-23T06:42:57Z")

</div>

```
    @Before
    public void setUp() throws Exception {
        // set up appiup
        File classpathRoot = new File(System.getProperty("user.dir"));
        File appDir = new File(classpathRoot, "scr/main/java/apps/ContactManager");
        File app = new File(appDir, "ContactManager.apk");
        //File appDir = new File("D:/new project/Appium_test20170303/demotest/scr/main/java/apps");
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("deviceName","TEST");
        capabilities.setCapability("platformVersion", "4.4.2");
        capabilities.setCapability("app", app.getAbsolutePath());
        capabilities.setCapability("appPackage", "com.example.android.contactmanager");
        capabilities.setCapability("appActivity", ".ContactManager");
        driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    }

```

```auto
Launching Appium server with command: D:\appium\Appium\node.exe lib\server\main.js --address 127.0.0.1 --port 4723 --platform-name Android --platform-version 21 --automation-name Appium --log-no-color
info: Welcome to Appium v1.4.16 (REV ae6877eff263066b26328d457bd285c0cc62430d)
info: Appium REST http interface listener started on 127.0.0.1:4723
info: [debug] Non-default server args: {"address":"127.0.0.1","logNoColors":true,"platformName":"Android","platformVersion":"21","automationName":"Appium"}
info: Console LogLevel: debug
info: --> POST /wd/hub/session {"capabilities":{"desiredCapabilities":{"app":"D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk","appPackage":"com.example.android.contactmanager","appActivity":".ContactManager","platformName":"Android","deviceName":"TEST","platformVersion":"4.4.2"},"requiredCapabilities":{}},"desiredCapabilities":{"app":"D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk","appPackage":"com.example.android.contactmanager","appActivity":".ContactManager","platformName":"Android","deviceName":"TEST","platformVersion":"4.4.2"},"requiredCapabilities":{}}
info: Client User-Agent string: Apache-HttpClient/4.5.2 (Java/1.8.0_112-release)
info: [debug] Using local app from desired caps: D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk
info: [debug] Got configuration error, not starting session
info: [debug] Cleaning up appium session
error: Failed to start an Appium session, err was: Error: Bad app: D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Error locating the app: ENOENT, stat 'D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk'
info: [debug] Error: Bad app: D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Error locating the app: ENOENT, stat 'D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk'
at [object Object]. (D:\appium\Appium\node_modules\appium\lib\devices\android\android-common.js:56:13)
at D:\appium\Appium\node_modules\appium\lib\devices\device.js:82:16
at FSReqWrap.oncomplete (fs.js:95:15)
info: [debug] Responding to client with error: {"status":33,"value":{"message":"A new session could not be created. (Original error: Bad app: D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Error locating the app: ENOENT, stat 'D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk')","origValue":"Bad app: D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Error locating the app: ENOENT, stat 'D:\new project\Appium_test20170303\scr\main\java\apps\ContactManager\ContactManager.apk'"},"sessionId":null}

```

i fine the same issues

> [@Failed to start an Appium session, err was: Error: Bad app](https://discuss.appium.io/t/failed-to-start-an-appium-session-err-was-error-bad-app/7727/3):
>
> String apkpath=“D:\latest Android Apps\Test.apk”; File app=new File(apkpath);capabilities.setCapability(“app”, app.getAbsolutePath());

but it not solve my problem  
how can i solve this issues?

---

<div class="post-metadata">

**Author:** ![connecttokc](https://discuss.appium.io/user_avatar/discuss.appium.io/connecttokc/32/3274_2.png) [@connecttokc](https://discuss.appium.io/u/connecttokc)\
**Post date:** [March 23, 2017, 6:53am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/2 "2017-03-23T06:53:33Z")

</div>

![](https://discuss.appium.io/uploads/default/original/2X/5/5697152db60fed3918817b2fdbb4005ef3bd0031.png)

User doubleslash instead of single slash for the app path.

---

<div class="post-metadata">

**Author:** ![IJU2134](https://discuss.appium.io/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@IJU2134](https://discuss.appium.io/u/IJU2134)\
**Post date:** [March 23, 2017, 8:48am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/3 "2017-03-23T08:48:08Z")

</div>

Thank your reply.  
I try,but Encounter new problems

```auto
  @Before
        public void setUp() throws Exception {
            // set up appiup
            File classpathRoot = new File(System.getProperty("user.dir"));
            File appDir = new File(classpathRoot, "scr\\java\\apps\\ContactManager");
            File app = new File(appDir, "ContactManager.apk");
            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability("deviceName","TEST");
            capabilities.setCapability("platformVersion", "4.4.2");
            capabilities.setCapability("app", app.getAbsolutePath());
            capabilities.setCapability("app", "D:\\new project\\Appium_test20170303\\demotest\\scr\\main\\java\\apps");
            //capabilities.setCapability("app", "D:\\new project\\Appium_test20170303\\demotest\\scr\\main\\java\\apps");
            capabilities.setCapability("appPackage", "com.example.android.contactmanager");
            capabilities.setCapability("appActivity", ".ContactManager");
            driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
        }

```

```auto
> error: Failed to start an Appium session, err was: Error: Bad app: D:\new project\Appium_test20170303\demotest\scr\main\java\apps. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Using local app, but didn't end in .zip, .ipa or .apk
> info: [debug] Error: Bad app: D:\new project\Appium_test20170303\demotest\scr\main\java\apps. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Using local app, but didn't end in .zip, .ipa or .apk
> at [object Object].<anonymous> (D:\appium\Appium\node_modules\appium\lib\devices\android\android-common.js:56:13)

```

---

<div class="post-metadata">

**Author:** ![sreenisankar](https://discuss.appium.io/letter_avatar_proxy/v4/letter/s/13edae/32.png) [@sreenisankar](https://discuss.appium.io/u/sreenisankar)\
**Post date:** [March 23, 2017, 9:40am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/4 "2017-03-23T09:40:28Z")

</div>

AM not sure…Anyway could you please check the path… (please check the spelling src or scr)

```
    **//File appDir = new File("D:/new project/Appium_test20170303/demotest/src/main/java/apps");**
                                                              instead of
    //File appDir = new File("D:/new project/Appium_test20170303/demotest/scr/main/java/apps");
```

---

<div class="post-metadata">

**Author:** ![IJU2134](https://discuss.appium.io/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@IJU2134](https://discuss.appium.io/u/IJU2134)\
**Post date:** [March 23, 2017, 10:09am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/5 "2017-03-23T10:09:40Z")

</div>

Thank your reply.  
You are righ, It’s src  
But the issues is still on it

```auto
@Before
        public void setUp() throws Exception {
            // set up appiup
            File classpathRoot = new File(System.getProperty("user.dir"));
            File appDir = new File(classpathRoot, "src\\java\\apps\\ContactManager");
            File app = new File(appDir, "ContactManager.apk");
            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability("deviceName","TEST");
            capabilities.setCapability("platformVersion", "4.4.2");
            capabilities.setCapability("app", app.getAbsolutePath());
            capabilities.setCapability("app", "D:\\new project\\Appium_test20170303\\demotest\\src\\main\\java\\apps");
            //capabilities.setCapability("app", "D:\\new project\\Appium_test20170303\\demotest\\scr\\main\\java\\apps");
            capabilities.setCapability("appPackage", "com.example.android.contactmanager");
            capabilities.setCapability("appActivity", ".ContactManager");
            driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
        }

```

> info: Client User-Agent string: Apache-HttpClient/4.5.2 (Java/1.8.0\_112-release)  
> error: Using local app, but didn’t end in .zip, .ipa or .apk  
> info: [debug] Got configuration error, not starting session  
> info: [debug] Cleaning up appium session  
> error: Failed to start an Appium session, err was: Error: Bad app: D:\new project\Appium\_test20170303\demotest\src\main\java\apps. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Using local app, but didn’t end in .zip, .ipa or .apk  
> info: [debug] Error: Bad app: D:\new project\Appium\_test20170303\demotest\src\main\java\apps. App paths need to be absolute, or relative to the appium server install dir, or a URL to compressed file, or a special app name. cause: Error: Using local app, but didn’t end in .zip, .ipa or .apk

```auto

```

---

<div class="post-metadata">

**Author:** ![sreenisankar](https://discuss.appium.io/letter_avatar_proxy/v4/letter/s/13edae/32.png) [@sreenisankar](https://discuss.appium.io/u/sreenisankar)\
**Post date:** [March 23, 2017, 11:27am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/6 "2017-03-23T11:27:49Z")

</div>

Could you please remove the line  
capabilities.setCapability(“app”, “D:\new project\Appium\_test20170303\demotest\src\main\java\apps”);

and

Note: No need to mention the whole directory path.  
Create a folder “testAPK” outside the src folder and then change the path like this:

File appDir = new File(classpathRoot, “/testAPK/”);

Now try …

---

<div class="post-metadata">

**Author:** ![IJU2134](https://discuss.appium.io/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@IJU2134](https://discuss.appium.io/u/IJU2134)\
**Post date:** [April 6, 2017, 6:44am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/7 "2017-04-06T06:44:45Z")

</div>

Thank your help  
I solved the issues，But there hava other problems  
I changed it to this

```auto
 @Before
    public void setUp() throws Exception {
        // set up appiup
        File appDir = new File("D:\\NewProject\\newproject\\Appium_test20170303\\demotest\\src\\main\\java\\apps");
        File app = new File( appDir, "ContactManager.apk");
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("deviceName","TEST");
        capabilities.setCapability("platformVersion", "4.4.2");
        capabilities.setCapability("app", app.getAbsolutePath());
        capabilities.setCapability("appPackage", "com.example.android.contactmanager");
        capabilities.setCapability("appActivity", ".ContactManager");
        driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    }

```

---

<div class="post-metadata">

**Author:** ![sreenisankar](https://discuss.appium.io/letter_avatar_proxy/v4/letter/s/13edae/32.png) [@sreenisankar](https://discuss.appium.io/u/sreenisankar)\
**Post date:** [April 6, 2017, 7:05am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/8 "2017-04-06T07:05:24Z")

</div>

Please mention what are the problems?

---

<div class="post-metadata">

**Author:** ![IJU2134](https://discuss.appium.io/letter_avatar_proxy/v4/letter/i/3da27b/32.png) [@IJU2134](https://discuss.appium.io/u/IJU2134)\
**Post date:** [April 6, 2017, 7:17am UTC](https://discuss.appium.io/t/error-bad-app-cannot-find-the-apk-path/15566/9 "2017-04-06T07:17:00Z")

</div>

I opened a new topic

> [@(Original error: Could not push strings.json)](https://discuss.appium.io/t/original-error-could-not-push-strings-json/15845):
>
> I don’t know what is this issues mean Is there anything missing? “org.openqa.selenium.SessionNotCreatedException: A new session could not be created. (Original error: Could not push strings.json) (WARNING: The server did not provide any stacktrace information)” I guess there is a problem in selenium-server.jar Appium 1.4.16.1 selenium-server-standalone-3.3.1 (1).jar java-client-5.0.0-BETA6.jar API 21 This is my code package com.example; import org.junit.After; import org.junit.Before; …
