禁止启动活动的权限重新启动appium服务器无法帮助

时间:2017-03-06 11:28:38

标签: java appium

当我在TestNG中运行此脚本时

`package TrainingDay3;

import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.By;
import io.appium.java_client.android.AndroidDriver;
import org.openqa.selenium.WebDriver;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;

public class Test1 {

    private static WebDriver driver;

  @BeforeClass

  public void beforeClass() {

      //public static void main(String[] args) throws MalformedURLException {

            File file = new File("D:\\workspace\\AppiumTraining\\apk\\app-qa-debug_original.apk");
            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability("platformName", "Android");
            capabilities.setCapability("Version", "6.0.1");
            capabilities.setCapability("deviceName", "XT-1254");
            capabilities.setCapability("app", file.getAbsolutePath());
            capabilities.setCapability("appPackage", "org.aarp.careconnect");
            capabilities.setCapability("appActivity", "org.aarp.careconnect.activities.MainActivity");
            try {
                driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
            } catch (MalformedURLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

  }

        @Test
          public void f() {

            //locate the Text on the app by using By.className()
                    //driver.findElement(By.className("android.widget.Button")).click();//("android.widget.Button")).click();
                    //driver.findElement(By.className("android.view.View")).click();
                    //driver.findElement(By.className("android.widget.EditText")).click();
                    //driver.findElement(By.className("android.widget.Button")).click();

          }

  @AfterClass
  public void afterClass() {
            // TODO: handle exception
            //close the app
            driver.quit();
  }
}`

获得异常FAILED CONFIGURATION:@BeforeClass beforeClass org.openqa.selenium.SessionNotCreatedException:无法创建新会话。 (原始错误:拒绝启动活动的权限。)(警告:服务器未提供任何堆栈跟踪信息) 命令持续时间或超时:0毫秒 构建信息:版本:'未知',修订版:'1969d75',时间:'2016-10-18 09:43:45 -0700'虽然我已多次重启appium服务器但它无济于事。

1 个答案:

答案 0 :(得分:0)

您正在启动android exported = True

的活动

要解决此问题,请按以下步骤操作:

  • 设置SDK / build-tools的路径
  • 现在从命令提示符运行aapt dumb badging" apk"
  • 的路径
  • 查找可启用的活动

这将有效