Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
appium-adb
Advanced tools
The appium-adb npm package is a Node.js library that provides a set of tools and utilities for interacting with Android devices using the Android Debug Bridge (ADB). It is primarily used in the context of mobile automation, particularly with the Appium framework, to perform various operations on Android devices such as installing apps, managing device state, and executing shell commands.
Install an APK
This feature allows you to install an APK file on a connected Android device. The code sample demonstrates how to create an ADB instance and use it to install an APK.
const ADB = require('appium-adb');
(async () => {
const adb = await ADB.createADB();
await adb.install('/path/to/your/app.apk');
})();
Execute Shell Command
This feature allows you to execute shell commands on a connected Android device. The code sample shows how to list the contents of the /system directory.
const ADB = require('appium-adb');
(async () => {
const adb = await ADB.createADB();
const result = await adb.shell(['ls', '/system']);
console.log(result);
})();
Start an App
This feature allows you to start an application on a connected Android device. The code sample demonstrates how to start an app by specifying its package and main activity.
const ADB = require('appium-adb');
(async () => {
const adb = await ADB.createADB();
await adb.startApp({
pkg: 'com.example.yourapp',
activity: 'com.example.yourapp.MainActivity'
});
})();
Get Device Properties
This feature allows you to retrieve various properties of a connected Android device. The code sample shows how to get and print the device properties.
const ADB = require('appium-adb');
(async () => {
const adb = await ADB.createADB();
const properties = await adb.getProperties();
console.log(properties);
})();
adbkit is a pure Node.js client for the Android Debug Bridge (ADB) protocol. It provides a set of tools for interacting with Android devices, similar to appium-adb. However, adbkit is more focused on providing a low-level interface to ADB, whereas appium-adb is tailored for use with the Appium automation framework.
adb-driver is another Node.js library for interacting with Android devices via ADB. It offers functionalities like installing APKs, running shell commands, and more. Compared to appium-adb, adb-driver is more lightweight and may lack some of the higher-level abstractions provided by appium-adb.
adbkit-apkreader is a library for reading information from APK files. While it does not provide direct ADB functionalities, it can be used in conjunction with other ADB libraries to gather detailed information about APKs. It complements appium-adb by offering additional capabilities for APK analysis.
A wrapper over android-adb, implemented using ES6 and along with async/await
. This package is mainly used by Appium to perform all adb operations on android device.
npm install appium-adb
npm run watch
npm run test
gulp e2e-test
example:
import ADB from 'appium-adb';
let adb = new ADB();
await adb.createADB();
console.log(await adb.getPIDsByName('m.android.phone'));
FAQs
Android Debug Bridge interface
The npm package appium-adb receives a total of 204,800 weekly downloads. As such, appium-adb popularity was classified as popular.
We found that appium-adb demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.