应用程序at<;路径>;不存在或无法使用Appium访问

应用程序at<;路径>;不存在或无法使用Appium访问,appium,appium-android,Appium,Appium Android,我正在学习使用eclipse的appium,在启动模拟器时遇到了困难。我尝试了不同的方法,例如在文件夹结构中移动文件,但我一直得到文件不存在或不可访问的结果。我尝试搜索答案,但没有任何帮助 package myAppiumTutorial; import java.io.File; import java.net.MalformedURLException; import java.net.URL; import org.openqa.selenium.remote.DesiredCapab

我正在学习使用eclipse的appium,在启动模拟器时遇到了困难。我尝试了不同的方法,例如在文件夹结构中移动文件,但我一直得到文件不存在或不可访问的结果。我尝试搜索答案,但没有任何帮助

package myAppiumTutorial;

import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;

import org.openqa.selenium.remote.DesiredCapabilities;

import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import io.appium.java_client.remote.MobileCapabilityType;

public class Base {

    public static void main(String[] args) throws MalformedURLException {
        // TODO Auto-generated method stub
        File f = new File("scr");
        File fs = new File(f,"ApiDemos-debug.apk");
        DesiredCapabilities cap = new DesiredCapabilities();
        cap.setCapability(MobileCapabilityType.DEVICE_NAME, "MyFirstEmu");
        cap.setCapability(MobileCapabilityType.APP, fs.getAbsolutePath());
        AndroidDriver<AndroidElement> driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"),cap);
包myAppiumTutorial;
导入java.io.File;
导入java.net.MalformedURLException;
导入java.net.URL;
导入org.openqa.selenium.remote.DesiredCapabilities;
导入io.appium.java_client.android.AndroidDriver;
导入io.appium.java_client.android.AndroidElement;
导入io.appium.java_client.remote.MobileCapabilityType;
公共阶级基础{
publicstaticvoidmain(字符串[]args)引发畸形的DurLexException{
//TODO自动生成的方法存根
文件f=新文件(“scr”);
文件fs=新文件(f,“ApiDemos debug.apk”);
DesiredCapabilities=新DesiredCapabilities();
cap.setCapability(移动能力类型设备名称,“MyFirstEmu”);
cap.setCapability(MobileCapabilityType.APP,fs.getAbsolutePath());

AndroidDriver

我相信您的问题在于加载文件的方式

请尝试以下操作:

File f=新文件(classLoader.getResource(“ApiDemos debug.apk”).getFile();

请同时查看以下内容:


请详细说明
File f=new File(“scr”);
正在做什么?我想您使用的是scr而不是src。谢谢@SubanDhyako我更新了它,它重新启动了一切,并且仍然收到了这条消息“远程stacktrace:UnknowError:处理命令时发生未知服务器端错误。原始错误:“C:\Users\Zamranj\eclipse workspaceNew\AppiumIntro\src\ApiDemos debug.apk”处的应用程序不存在或不可访问“System.out.println(fs.getAbsolutePath())的作用是什么?”;`print in your console?这是apk文件的打印路径吗?@SubanDhyako我得到了正确的路径我的路径:C:\Users\Zamranj\eclipse workspaceNew\AppiumIntro\scr\ApiDemos debug.apkI使用此代码时遇到问题。我不确定应该设置什么参数对象类getClass=new Class(参数);使用?尝试
getResource
而不是
getClass
[Appium] Setting automation to 'UiAutomator1'.
[Appium] Appium v1.13.0 creating new AndroidDriver (v4.15.1) session
[Appium] Capabilities:
[Appium]   platformName: android
[Appium]   app: C:\Users\Zamranj\eclipse-workspaceNew\AppiumIntro\scr\ApiDemos-debug.apk
[Appium]   deviceName: MyFirstEmu
[debug] [BaseDriver] W3C capabilities {"alwaysMatch":{"platformNa... and MJSONWP desired capabilities {"app":"C:\\Users\\Zamranj\... were provided
[debug] [BaseDriver] Creating session with W3C capabilities: {"alwaysMatch":{"platformNa...
[BaseDriver] Session created with session id: 638fc0a9-1aa0-4b56-ba69-3c854b8e1816
[ADB] Found 1 'build-tools' folders under 'C:\Users\Zamranj\AppData\Local\Android\Sdk' (newest first):
[ADB]     C:/Users/Zamranj/AppData/Local/Android/Sdk/build-tools/28.0.3
[ADB] Using 'adb.exe' from 'C:\Users\Zamranj\AppData\Local\Android\Sdk\platform-tools\adb.exe'
[AndroidDriver] Retrieving device list
[debug] [ADB] Trying to find a connected android device
[debug] [ADB] Getting connected devices...
[debug] [ADB] 1 device(s) connected
[AndroidDriver] Using device: emulator-5554
[ADB] Using 'adb.exe' from 'C:\Users\Zamranj\AppData\Local\Android\Sdk\platform-tools\adb.exe'
[debug] [ADB] Setting device id to emulator-5554
[debug] [ADB] Running 'C:\Users\Zamranj\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s emulator-5554 shell getprop ro.build.version.sdk'
[debug] [ADB] Current device property 'ro.build.version.sdk': 25
[debug] [ADB] Device API level: 25
[AndroidDriver] Consider setting 'automationName' capability to 'uiautomator2' on Android >= 6, since UIAutomator framework is not maintained anymore by the OS vendor.
[debug] [AndroidDriver] Shutting down Android driver
[debug] [AndroidDriver] Called deleteSession but bootstrap wasn't active
[debug] [ADB] Running 'C:\Users\Zamranj\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s emulator-5554 shell am force-stop io.appium.unlock'
[debug] [AndroidDriver] Not cleaning generated files. Add `clearSystemFiles` capability if wanted.
[debug] [BaseDriver] Event 'newSessionStarted' logged at 1559218980295 (07:23:00 GMT-0500 (Central Daylight Time))
[debug] [W3C] Encountered internal error running command: Error: The application at 'C:\Users\Zamranj\eclipse-workspaceNew\AppiumIntro\scr\ApiDemos-debug.apk' does not exist or is not accessible
[debug] [W3C]     at APPLICATIONS_CACHE_GUARD.acquire (C:\Users\Zamranj\AppData\Roaming\npm\node_modules\appium\node_modules\appium-base-driver\lib\basedriver\helpers.js:159:13)
[HTTP] <-- POST /wd/hub/session 500 2956 ms - 835
[HTTP]