Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (C) 2013 The Android Open Source Project
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *      http://www.apache.org/licenses/LICENSE-2.0
   *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package com.android.builder.testing;
 
 
 import java.io.File;
 import java.util.List;
Local device connected to with ddmlib. This is a wrapper around com.android.ddmlib.IDevice.
 
 public class ConnectedDevice extends DeviceConnector {
 
     private final IDevice iDevice;
 
     public ConnectedDevice(@NonNull IDevice iDevice) {
         this. = iDevice;
     }
 
     @NonNull
     @Override
     public String getName() {
         String version = .getProperty(.);
         boolean emulator = .isEmulator();
 
         String name;
         if (emulator) {
             name = .getAvdName() != null ?
                     .getAvdName() + "(AVD)" :
                     .getSerialNumber();
         } else {
             String model = .getProperty(.);
             name = model != null ? model : .getSerialNumber();
         }
 
         return version != null ? name + " - " + version : name;
     }
 
     @Override
     public void connect(int timeoutILogger loggerthrows TimeoutException {
         // nothing to do here
     }
 
     @Override
     public void disconnect(int timeoutILogger loggerthrows TimeoutException {
         // nothing to do here
     }
 
     @Override
     public void installPackage(@NonNull File apkFileint timeoutILogger loggerthrows DeviceException {
         try {
             .installPackage(apkFile.getAbsolutePath(), true /*reinstall*/);
         } catch (Exception e) {
             logger.error(e"Unable to install " + apkFile.getAbsolutePath());
             throw new DeviceException(e);
         }
     }
 
     @Override
     public void uninstallPackage(@NonNull String packageNameint timeoutILogger loggerthrows DeviceException {
         try {
             .uninstallPackage(packageName);
         } catch (Exception e) {
             logger.error(e"Unable to uninstall " + packageName);
             throw new DeviceException(e);
         }
     }
 
     @Override
     public void executeShellCommand(String commandIShellOutputReceiver receiver,
                                     long maxTimeToOutputResponseTimeUnit maxTimeUnits)
                                     throws TimeoutExceptionAdbCommandRejectedException,
                                    ShellCommandUnresponsiveExceptionIOException {
        .executeShellCommand(commandreceivermaxTimeToOutputResponsemaxTimeUnits);
    }
    @Override
    public void pullFile(String remoteString localthrows IOException {
        try {
            .pullFile(remotelocal);
        } catch (TimeoutException e) {
            throw new IOException(String.format("Failed to pull %s from device"remote), e);
        } catch (AdbCommandRejectedException e) {
            throw new IOException(String.format("Failed to pull %s from device"remote), e);
        } catch (SyncException e) {
            throw new IOException(String.format("Failed to pull %s from device"remote), e);
        }
    }
    @NonNull
    @Override
    public String getSerialNumber() {
        return .getSerialNumber();
    }
    @Override
    public int getApiLevel() {
        String sdkVersion = .getProperty(.);
        if (sdkVersion != null) {
            try {
                return Integer.valueOf(sdkVersion);
            } catch (NumberFormatException e) {
            }
        }
        // can't get it, return 0.
        return 0;
    }
    @Override
    public String getApiCodeName() {
        String codeName = .getProperty(.);
        if (codeName != null) {
            // if this is a release platform return null.
            if ("REL".equals(codeName)) {
                return null;
            }
            // else return the codename
            return codeName;
        }
        // can't get it, return 0.
        return null;
    }
    @Nullable
    @Override
    public IDevice.DeviceState getState() {
        return .getState();
    }
    @NonNull
    @Override
    public List<StringgetAbis() {
        return .getAbis();
    }
    @Override
    public int getDensity() {
        return .getDensity();
    }
    @Override
    public int getHeight() {
        return 0;  //To change body of implemented methods use File | Settings | File Templates.
    }
    @Override
    public int getWidth() {
        return 0;  //To change body of implemented methods use File | Settings | File Templates.
    }
New to GrepCode? Check out our FAQ X