Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ooni/probe-ios

OONI Probe iOS
https://github.com/ooni/probe-ios

ios network-monitoring network-programming ooniprobe

Last synced: 2 months ago
JSON representation

OONI Probe iOS

Awesome Lists containing this project

README

        

# OONI Probe iOS

[![OONI Probe iOS](assets/OONIProbeLogo.png)](https://ooni.org)



chat on Slack


open issues

Emulator Tests Status


follow on Twitter


Get it on Google Play



OONI Probe is free and open source software designed to measure internet
censorship and other forms of network interference.

[Click here to report a bug](https://github.com/ooni/probe/issues/new)

Other supported platforms: [Android](https://github.com/ooni/probe-android), [Desktop](https://github.com/ooni/probe-desktop), [CLI](https://github.com/ooni/probe-cli)

## Developer information

If you are interested in building the app yourself, read on.

To download and install the measurement-kit library we use [CocoaPods](https://cocoapods.org).

To install cocoapod use

```
sudo gem install cocoapods # brew install cocoapods on macOS
```

Then use the command:

```
pod install
```

This command will install the latest stable binary measurement-kit library
and its dependencies and install the frameworks inside the Xcode Workspace.

Then open the xcode workspace (not the xcode project!) located in
`ooniprobe.xcworkspace` and click on run to build it.

### How to complile a specific version of oonimkall for an Xcode project.

The most important dependency is `oonimkall`. This dependency contains
the network measurement engine. Its sources are at
[ooni/probe-cli](https://github.com/ooni/probe-cli). We fetch the `oonimkall`
framework directly from `ooni/probe-cli` releases.

You can use a specific version of `oonimkall` it in your project by
changing the release to which it points to in the `Podfile`.

Then type `pod install` and open `.xcworkspace` file (beware not to open the
`.xcodeproj` file instead, because that alone won't compile).

## Managing translations

To manage translations check out our [translation repo](https://github.com/ooni/translations) and follow the instructions there.

## Contributing

* Write some code

* Open a pull request

* Have fun!

## Fastlane

We use fastlane for creating automatically app screenshots in the various
languages we support.

You first need to have some depedencies installed. On macOS:

To install fastlane:

```
# Using RubyGems
sudo gem install fastlane -NV

# Alternatively using Homebrew
brew cask install fastlane
```

Then:

```
brew install libpng jpeg imagemagick

```

You will then be able to automate screenshot creation with:

```
fastlane screenshots
```

Learn more on the fastlane docs:
https://docs.fastlane.tools/getting-started/ios/screenshots