{ "info": { "author": "Daniel Dom\u00ednguez", "author_email": "daniel.dominguez@imdea.org", "bugtrack_url": null, "classifiers": [], "description": "# Dex2Call\n\n[![PyPI version](https://badge.fury.io/py/dex2call.svg)](https://badge.fury.io/py/dex2call)\n\nA simple script that takes an APK or a DEX files and returns the method calls made by the developer's code to the android.jar classes.\n\nTested on Python 2.7 and 3.7 but should be a polyglot script.\n\n## Installation\n\n pip install dex2call\n\n## Usage\n\n $ dex2call --help\n Usage: dex2call [OPTIONS] \n \n This script reads the bytecode of a dex file or an apk file and yields the\n API calls made by the developer code. By default only shows the API calls\n made to android.jar.\n \n The script by default looks for ./classes.dex.\n \n Options:\n -o, --output Location where to dump the results. Default\n stdout (-)\n --android-only / --all-methods Set to true to remove any method call that\n doesn't point to an android method\n --help Show this message and exit.\n\n## Example:\n\nAs command line tool:\n\n $ dex2call classes.dex\n (android.location.Location getLatitude () None)\n (android.location.Location getLongitude () None)\n (android.app.Activity () None)\n (android.app.Activity onCreate (android.os.Bundle) None)\n (android.location.LocationManager requestLocationUpdates (java.lang.String android.location.LocationListener) None)\n (android.app.Activity onResume () None)\n (android.util.Log d (java.lang.String java.lang.String) None)\n (android.util.Log d (java.lang.String java.lang.String) None)\n (android.widget.Toast makeText (android.content.Context java.lang.CharSequence) android.widget.Toast)\n (android.widget.Toast show () None)\n (android.widget.Toast makeText (android.content.Context java.lang.CharSequence) android.widget.Toast)\n (android.widget.Toast show () None)\n\nIf an APK is passed to the tool, it will extract each dex file and also will infer the package name.\n\nAn example can be found in `example.py` of how to use dex2call as a python module.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/0xddom/dex2call", "keywords": "", "license": "LICENSE", "maintainer": "", "maintainer_email": "", "name": "dex2call", "package_url": "https://pypi.org/project/dex2call/", "platform": "", "project_url": "https://pypi.org/project/dex2call/", "project_urls": { "Homepage": "https://github.com/0xddom/dex2call" }, "release_url": "https://pypi.org/project/dex2call/0.6.1/", "requires_dist": null, "requires_python": "", "summary": "A simple module to get calls to android.jar from the bytecode", "version": "0.6.1" }, "last_serial": 4543540, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "9245df386d93fcfa9ccadb4e08267e33", "sha256": "10488f383f97fb1b95b50be8c4334e52114fed78cce41071b79498e730c67bdb" }, "downloads": -1, "filename": "dex2call-0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "9245df386d93fcfa9ccadb4e08267e33", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4333, "upload_time": "2018-09-24T16:24:31", "url": "https://files.pythonhosted.org/packages/9c/2a/54263480494b1aae7fcc5fabf8869835ceb6a675acf166cda827072d0e6d/dex2call-0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2129b001a81cb5f48a03e596f2d2b021", "sha256": "54e37c048a4e0b019d4567b424c2dac5ac9eb25b7790cf9556e846b4cb467483" }, "downloads": -1, "filename": "dex2call-0.1.tar.gz", "has_sig": false, "md5_digest": "2129b001a81cb5f48a03e596f2d2b021", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3626, "upload_time": "2018-09-24T16:24:29", "url": "https://files.pythonhosted.org/packages/b2/8f/0bc038916010e091a31d4d6f4e3e41e966fc8ea8ca9f2160bf7f2a68318b/dex2call-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "c7bc4620ddc9880adf0ee25a2eb6f711", "sha256": "43dfff8ca20d5ad8c59d0625997b5fd99dafa7083f7285d1f403e47ce506fddb" }, "downloads": -1, "filename": "dex2call-0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "c7bc4620ddc9880adf0ee25a2eb6f711", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4500, "upload_time": "2018-09-24T16:43:26", "url": "https://files.pythonhosted.org/packages/cc/1d/55f23c95c98d8d97bcfe189f7f91ec88c59e4b958e1f3849e30594e7b723/dex2call-0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bea5334d08f70320f0d633e8402d5283", "sha256": "2bc65e1f2df716631cb954dbe7c174dde795b232b6db5116ffc222ecc4d50a26" }, "downloads": -1, "filename": "dex2call-0.2.tar.gz", "has_sig": false, "md5_digest": "bea5334d08f70320f0d633e8402d5283", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3747, "upload_time": "2018-09-24T16:43:24", "url": "https://files.pythonhosted.org/packages/04/f5/48f605d0551f9c1e8af0a4a61c701b0284459232a182ab048abb04194414/dex2call-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "808aa3020e095200a9f8bc15596f1fda", "sha256": "1afe0ed2ac25e1aa3303258fcccf84613ed01d0c7094d7f5f7d939a9dd72d6f4" }, "downloads": -1, "filename": "dex2call-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "808aa3020e095200a9f8bc15596f1fda", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4435, "upload_time": "2018-09-24T16:45:14", "url": "https://files.pythonhosted.org/packages/36/6a/acdcb53c57e27ef82cddc394a078a4d501198f6691d79142833ab8f157c5/dex2call-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ca77d57c98b13e761fc43512ed9b6a8d", "sha256": "44b81509e3bc38109466d321e2d140054dd8437af003ea1f0879b4d330d5226f" }, "downloads": -1, "filename": "dex2call-0.2.1.tar.gz", "has_sig": false, "md5_digest": "ca77d57c98b13e761fc43512ed9b6a8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3639, "upload_time": "2018-09-24T16:45:12", "url": "https://files.pythonhosted.org/packages/f0/19/9a8ebd6fe0e0974bbbb05d8c1b0685cc4505a6849830cebac145956cee45/dex2call-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "0349454512ea0d4b816c80edcc8dfd82", "sha256": "e488199abc9302ce87ffe52e04efee8dabf78c347cfd863f7a3f01e4f19574a0" }, "downloads": -1, "filename": "dex2call-0.3.0-py2-none-any.whl", "has_sig": false, "md5_digest": "0349454512ea0d4b816c80edcc8dfd82", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4781, "upload_time": "2018-09-26T09:31:33", "url": "https://files.pythonhosted.org/packages/e8/1c/a9687a7605d819fa4ead9e84465057bb21a11305c290b8249f7f6f38ad50/dex2call-0.3.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "66d6c6f7b1ab409d78015eaf0d4f29cd", "sha256": "b30af464a8b8b961bd83d622f92932a573b19c027e06b328604e467cb45c3204" }, "downloads": -1, "filename": "dex2call-0.3.0.tar.gz", "has_sig": false, "md5_digest": "66d6c6f7b1ab409d78015eaf0d4f29cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3994, "upload_time": "2018-09-26T09:31:31", "url": "https://files.pythonhosted.org/packages/46/34/b50745fbb74f2d6d31d9afa0d08f33d62670426c08b919278bce36ee7c7e/dex2call-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "4e7ae48cf4ac2a3dd1db7488106badc3", "sha256": "df5bc7b1d14df615b83e03a692571588601b58b764f8687da67dd1220d701a03" }, "downloads": -1, "filename": "dex2call-0.3.1.tar.gz", "has_sig": false, "md5_digest": "4e7ae48cf4ac2a3dd1db7488106badc3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4021, "upload_time": "2018-11-26T15:20:52", "url": "https://files.pythonhosted.org/packages/c7/17/c2b37604ab4210186aca1ed77a79e1978c1f35dcd0f839b7b6a2956fc92e/dex2call-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "81d3e6289130337b02df32fe81487101", "sha256": "b7a3478388a8446fb2a111cd741ae4f42084097f577a8a6af79f4451d9c15554" }, "downloads": -1, "filename": "dex2call-0.4.0.tar.gz", "has_sig": false, "md5_digest": "81d3e6289130337b02df32fe81487101", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4064, "upload_time": "2018-11-28T13:52:27", "url": "https://files.pythonhosted.org/packages/cf/ef/ce85d1456a34cdfee4890521d91397be21a5f40eacb0bb350ed86389d3e0/dex2call-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "859bbdb5d6e07870d28768595a7e77db", "sha256": "fab8d1717b13ff122263158d92f5f8f18165575d13b359d8b9b7f9370ca16fee" }, "downloads": -1, "filename": "dex2call-0.5.0.tar.gz", "has_sig": false, "md5_digest": "859bbdb5d6e07870d28768595a7e77db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4043, "upload_time": "2018-11-29T14:38:25", "url": "https://files.pythonhosted.org/packages/05/81/5ca2b6791607bde4101c5c28362771c6cac42c7f3024284a1c5f5a22bf50/dex2call-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "3e968549796f70cf309aa5dc07eab728", "sha256": "3c9b143b708ce0036ab431b165a039c5b569c984f798adfeef88f298b8f1be01" }, "downloads": -1, "filename": "dex2call-0.5.1.tar.gz", "has_sig": false, "md5_digest": "3e968549796f70cf309aa5dc07eab728", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4034, "upload_time": "2018-11-29T14:40:04", "url": "https://files.pythonhosted.org/packages/3d/51/282e790879ad2e7f3710afea98058d3aefdfc3f2cd6b7cbd8a6ebb28dacb/dex2call-0.5.1.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "31b8e009266bfeaf58d10d4da2a80029", "sha256": "9da43f7dc2fa5ae4dd286cee01777d94bef27418d4ca11bddae9f1a737b8ed92" }, "downloads": -1, "filename": "dex2call-0.6.0.tar.gz", "has_sig": false, "md5_digest": "31b8e009266bfeaf58d10d4da2a80029", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3434, "upload_time": "2018-11-29T15:37:20", "url": "https://files.pythonhosted.org/packages/09/ae/7b0d3cc1f344ea54843e94881de97fcf86f0773d69b38e470b1ff87f0039/dex2call-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "c6a3fb65e317c0724086c92afcab5b4c", "sha256": "1ec6bc48d125321ba2f8a4d7decfb366d940f60f08d5423010152336b64eb799" }, "downloads": -1, "filename": "dex2call-0.6.1.tar.gz", "has_sig": false, "md5_digest": "c6a3fb65e317c0724086c92afcab5b4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3447, "upload_time": "2018-11-29T16:07:35", "url": "https://files.pythonhosted.org/packages/e1/69/05c03b2dbcd3e876a1e43cea61e9a2f4ec51a2390c5a0abf11349743172d/dex2call-0.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c6a3fb65e317c0724086c92afcab5b4c", "sha256": "1ec6bc48d125321ba2f8a4d7decfb366d940f60f08d5423010152336b64eb799" }, "downloads": -1, "filename": "dex2call-0.6.1.tar.gz", "has_sig": false, "md5_digest": "c6a3fb65e317c0724086c92afcab5b4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3447, "upload_time": "2018-11-29T16:07:35", "url": "https://files.pythonhosted.org/packages/e1/69/05c03b2dbcd3e876a1e43cea61e9a2f4ec51a2390c5a0abf11349743172d/dex2call-0.6.1.tar.gz" } ] }