• Stars
    star
    315
  • Rank 132,951 (Top 3 %)
  • Language
    Java
  • License
    BSD 3-Clause "New...
  • Created over 8 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Helper app to allow joining a wifi AP directly from ADB

adb-join-wifi

A simple app for making it possible to join a certain wifi access point from ADB without requiring a rooted device. Also supports modifying proxy settings.

Usage

Build the app, either by importing the project into Android Studio or by using the following command (make sure you have set the ANDROID_HOME environment variable if you choose the latter):

./gradlew assembleDebug

Alternatively you can also just download the latest release:

wget https://github.com/steinwurf/adb-join-wifi/releases/download/1.0.1/adb-join-wifi.apk

install the app:

adb install app/build/outputs/apk/debug/app-debug.apk

Use the Activity Manager (am) to start the application with the appropriate parameters:

To join a wifi network with no password:

adb shell am start -n com.steinwurf.adbjoinwifi/.MainActivity -e ssid SSID

To join a password protected wifi network:

adb shell am start -n com.steinwurf.adbjoinwifi/.MainActivity \
    -e ssid SSID -e password_type WEP|WPA -e password PASSWORD

To join a wifi network and set a static proxy (with optional bypass list):

adb shell am start -n com.steinwurf.adbjoinwifi/.MainActivity \
    -e ssid SSID -e password_type WEP|WPA -e password PASSWORD \
    -e proxy_host HOSTNAME -e proxy_port PORT [-e proxy_bypass COMMA,SEPARATED,LIST]

To join a wifi network and set a proxy auto-configuration URL:

adb shell am start -n com.steinwurf.adbjoinwifi/.MainActivity \
    -e ssid SSID -e password_type WEP|WPA -e password PASSWORD \
    -e proxy_pac_uri http://my.pac/url

To clear proxy settings, simply join the same network again and do not pass proxy arguments.

Modifying existing Wifi configurations

Note that android apps are not allowed to change the wifi configuration if it was created by another app (for example -- by the user in the Settings app). For this reason, if you try to use this app to join/modify an existing wifi network, this app will not modify it and will join it as-configured.

To get around this for testing purposes and modify any wifi configuration, you can grant this app device owner privileges:

adb shell dpm set-device-owner "com.steinwurf.adbjoinwifi/.AdminReceiver"

This requires that your device has no provisioned accounts on it. If you wish to demote this app and remove its device owner privileges, run this:

adb shell am start -n com.steinwurf.adbjoinwifi/.MainActivity -e clear_device_admin true

License

adb-join-wifi is available under the BSD license.

More Repositories

1

cpuid

C++ library for detecting CPU capabilities
C++
108
star
2

recycle

Simple resource pool for recycling resources in C++
C++
64
star
3

kodo-ns3-examples

Examples for using kodo with ns-3
Python
36
star
4

endian

C++ library for conversion between big and little endian data representations.
C++
35
star
5

boost

A minimal subset of the Boost C++ library
C++
34
star
6

waf

Extensions to the Waf build system
Python
18
star
7

platform

C++ library for detecting compiler and platform properties
C++
17
star
8

gtest

Waf build scripts for Google C++ Testing Framework
C++
15
star
9

astyle

A modified version of astyle (http://astyle.sourceforge.net) to support the Steinwurf coding style
C++
15
star
10

bitter

Is a lightweight API for reading an arbitrary amount of bits from a single input
C++
15
star
11

storage-benchmarks

Performance comparison of erasure coding libraries
C
9
star
12

versjon

Tool for injecting version selector in Sphinx's HTML output
Python
8
star
13

steinwurf-labs

Research and experimental code
Python
7
star
14

gauge

gauge is a flexible C++ benchmarking tool.
C++
7
star
15

pytest-vagrant

Pytest-vagrant provides a py.test fixture for working with vagrant in pytest.
Python
7
star
16

sak

Collection of reusable C++ components
C++
7
star
17

kodo-basic-simulations

Network Coding simulations based on the Kodo library
C++
6
star
18

bourne

json reader and writer
C++
6
star
19

meta

meta is a simple C++ library that provide simple helper functions to ease manipulation of lists of types.
C++
6
star
20

wurfapi

Python
6
star
21

pytest-testdirectory

Python
5
star
22

tables

Tables is a c++ library which allows arbitrary data to be stored as rows in a table with column headers.
C++
4
star
23

hex

C++ library for printing the content of an object as a hexdump.
C++
4
star
24

waf-tools

Repository for managing the Waf tools used by Steinwurf
Python
4
star
25

abacus

Abacus is a C++ metrics library.
C++
3
star
26

petro

mp4 parser
C++
3
star
27

steinloss

A packet loss measuring tool
Python
3
star
28

gbenchmark

C++
2
star
29

kodo-rlnc-go

Go
2
star
30

stub

Helper functionality for writing unit tests.
C++
2
star
31

slack-also-send-to-channel-default-on-chrome-extension

Slack "Also send to #Channel" Default On Chrome Extension
JavaScript
2
star
32

mts

library for parsing mpegts files and streams
C++
2
star
33

tunnel

Manipulate Linux tun interfaces
C++
2
star
34

kodo-simulations-python

Collection of simulations created using kodo-python
Python
2
star
35

pytest-datarecorder

Python
2
star
36

opus-android

JNI wrapper for opus
Java
1
star
37

adb.py

Android Debug Bridge (ADB) Wrapper for managing multiple devices
Python
1
star
38

mediaplayer-android

Android library for playback of raw data buffers as media
Java
1
star
39

bnb

An endianness aware stream reader for Bits'N'Bytes
C++
1
star
40

chunkie

Serializing and deserializing between object and stream
C++
1
star
41

fmt

fmt build script wrapper for waf build system https://github.com/fmtlib/fmt
CMake
1
star
42

cpp-tester

A repo to test C++ language features
C++
1
star
43

openwrt-patches

Patches for OpenWRT
1
star
44

wurfdocs

Python
1
star
45

yaml-cpp

YAML parser and emitter in C++
C++
1
star
46

build-images

This repository contains docker-images with compilers, formatters, linters and other tools.
Dockerfile
1
star
47

score-android

Score android bindings
Java
1
star
48

petro-android

This repository contains an application that demonstrates different approaches for audio and video playback with the Android MediaCodec API.
Java
1
star
49

windows-cmake-action

Action to run a cmake build workflow on a Windows machine for our C++ projects
1
star
50

ranbo

Ranbo is a C Pseudo-Random-Number-Generator (PRNG) library. We wanted to create a library that allows us to use random-number-generators in both user-space and linux-kernel-space that are fast and sufficiently random on a bit-level.
C++
1
star