Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/green-code-initiative/ecoCode-android
Reduce the environmental footprint of your Java-based Android apps with SonarQube
https://github.com/green-code-initiative/ecoCode-android
android mobile native sonarqube sonarqube-plugin
Last synced: 3 months ago
JSON representation
Reduce the environmental footprint of your Java-based Android apps with SonarQube
- Host: GitHub
- URL: https://github.com/green-code-initiative/ecoCode-android
- Owner: green-code-initiative
- License: gpl-3.0
- Created: 2022-11-27T21:46:03.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-15T10:59:01.000Z (7 months ago)
- Last Synced: 2024-10-28T02:53:37.849Z (3 months ago)
- Topics: android, mobile, native, sonarqube, sonarqube-plugin
- Language: Groovy
- Homepage: https://ecocode.io
- Size: 9.28 MB
- Stars: 57
- Watchers: 8
- Forks: 17
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Citation: CITATION.cff
Awesome Lists containing this project
- awesome-list - green-code-initiative/ecoCode-android - Reduce the environmental footprint of your Java-based Android apps with SonarQube (Groovy)
README
![Logo](docs/resources/5ekko.png)
======================================Mobile apps running on top of battery-limited, android-powered devices are more than others concerned by the reduction of their environmental footprint. Hence, we created `ecoCode android`, the version of ecoCode project fully dedicated to the Android platform. It provides static code analyzers to highlight code structures that may have a negative ecological impact: energy over-consumption, "fatware", shortening devices' lifespan, etc.
ecoCode android is based on an evolving catalog of [best practices for Android](https://github.com/cnumr/best-practices-mobile#-android-platform). A SonarQube plugin then implements this catalog as rules for scanning your native Android projects **written in Java only**. To learn more, take a look at the [complete presentation](docs/resources/devfest-2022.pdf) (:fr:) or the [presentation in a nutshell](docs/resources/apidays-2022.pdf). A hands-on [tutorial](https://olegoaer.perso.univ-pau.fr/green-it-summer-school/ecoCode/lab.html) and free demo access is also available (:fr:).
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
🌿 SonarQube Plugin
-------------------![Screenshot](android-plugin/docs/screenshot.png)
The custom GUI above is reserved to educational purpose only.
🚀 Quickstart
-------------A SonarQube container image with ecoCode Android embedded exists !
```bash
docker run -ti --rm \
-v sq_ecocode_android_logs:/opt/sonarqube/logs \
-v sq_ecocode_android_data:/opt/sonarqube/data \
-p 9000:9000 \
--name sonarqube-ecocode-android \
ghcr.io/green-code-initiative/sonarqube-ecocode-android:latest
```Wait a little bit during first start initialization, and go to [http://localhost:9000](http://localhost:9000). Default credentials are `admin`/`admin`
🤝 Partners
------------[![Snapp’](android-plugin/docs/logoSnapp.png)](https://www.snapp.fr)
[![Université de Pau](android-plugin/docs/logoUnivPau.png)](https://www.univ-pau.fr/)
[![Région Nouvelle-Aquitaine](android-plugin/docs/logoNA.png)](https://www.nouvelle-aquitaine.fr)
[![Solocal / PagesJaunes](android-plugin/docs/logoSolocal.png)](https://www.pagesjaunes.fr)📢 Cite this work
------------------If you use ecoCode in an academic work we would be really glad if you cite our seminal paper using the following bibtex entry:
```bibtex
@inproceedings{10.1145/3551349.3559518,
author = {Le Goaer, Olivier and Hertout, Julien},
title = {ecoCode: A SonarQube Plugin to Remove Energy Smells from Android Projects},
year = {2023},
isbn = {9781450394758},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3551349.3559518},
doi = {10.1145/3551349.3559518},
booktitle = {37th IEEE/ACM International Conference on Automated Software Engineering},
articleno = {157},
numpages = {4},
keywords = {android, energy, smells, debt, quality, battery},
location = {Rochester, MI, USA},
series = {ASE22}
}
```🛒 Distribution
---------------Ready to use binaries are available [from GitHub](https://github.com/green-code-initiative/ecocode-android/releases).
🧩 Plugins version compatibility
------------------| Plugins Version | SonarQube version |
|-----------------|-----------------------------|
| 0.0.+ | SonarQube 8.9.+ LTS to 9.3 |
| 0.1.+ | SonarQube 9.4.+ LTS to 9.9 |
| 1.0.+ | SonarQube 9.4.+ LTS to 9.9 |
| 1.1.+ | SonarQube 9.4.+ LTS to 10.3 |☕ Plugin Java part compatibility
------------------| Plugins Version | Java version |
|------------------|--------------|
| 0.0.+ | 11 / 17 |
| 0.1.+ | 11 / 17 |
| 1.0.+ | 11 / 17 |
| 1.1.+ | 11 / 17 |