{"id":13848045,"url":"https://github.com/zulip/zulip-android-legacy","last_synced_at":"2025-07-12T11:33:20.491Z","repository":{"id":37431766,"uuid":"43160849","full_name":"zulip/zulip-android-legacy","owner":"zulip","description":"Legacy Zulip Android app","archived":true,"fork":false,"pushed_at":"2024-07-25T18:11:14.000Z","size":8983,"stargazers_count":408,"open_issues_count":69,"forks_count":246,"subscribers_count":46,"default_branch":"master","last_synced_at":"2024-08-09T23:01:48.062Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zulip.png","metadata":{"files":{"readme":"README.rst","changelog":"changelog","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-09-25T16:39:37.000Z","updated_at":"2024-08-09T23:02:03.135Z","dependencies_parsed_at":"2024-08-09T23:02:01.750Z","dependency_job_id":"00cb1828-3b4a-447a-8c31-0e742dc6fdf5","html_url":"https://github.com/zulip/zulip-android-legacy","commit_stats":null,"previous_names":["zulip/zulip-android-legacy","zulip/zulip-android"],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zulip%2Fzulip-android-legacy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zulip%2Fzulip-android-legacy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zulip%2Fzulip-android-legacy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zulip%2Fzulip-android-legacy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zulip","download_url":"https://codeload.github.com/zulip/zulip-android-legacy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225820303,"owners_count":17529138,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T19:00:39.524Z","updated_at":"2024-11-21T23:30:55.809Z","avatar_url":"https://github.com/zulip.png","language":"Java","funding_links":[],"categories":["Java"],"sub_categories":[],"readme":"﻿\n\n==========================\nZulip for Android (legacy)\n==========================\n\n**Note**: This project is deprecated in favor of our `React Native\napp`_, which supports both iOS and Android.\n\n.. _React Native app: https://github.com/zulip/zulip-mobile\n\n---------------\n\nThis is the legacy native Android client for `Zulip\n\u003chttp://www.zulip.org\u003e`_.  It is available `in the Google Play store\n\u003chttps://play.google.com/store/apps/details?id=com.zulip.android\u003e`_.\nIf you have a taste for adventure, you can also `join our beta channel\n\u003chttps://play.google.com/apps/testing/com.zulip.android\u003e`_ after which\nthe Play store should auto-update you. (Caution: beta releases will\nhave more bugs than final releases, including (potentially) security\nor data loss bugs.)\n\nThis is a Gradle project, and can be built via the provided ``gradlew``\nor by using Android Studio.\n\n**Index**\n---------------\n\n\n-  `Getting Started`_\n-  `Getting Help`_\n-  `Build instructions (Android Studio)`_\n-  `Build instructions (without Android Studio)`_\n-  `Running server on device`_\n-  `Contributing`_\n-  `Mailing List`_\n-  `Export`_\n-  `License`_\n\n.. _Getting Started: #getting-started\n.. _Getting Help: #getting-help\n.. _Build instructions (Android Studio): #build-instructions-android-studio\n.. _Build instructions (without Android Studio): #build-instructions-without-android-studio\n.. _Running server on device: #browsing-server-on-device\n.. _Contributing: #contributing\n.. _Mailing List: #mailing-list\n.. _Export: #export\n.. _License: #license\n\nGetting Started\n---------------\n\n- First, clone this repository and follow the Android Studio build\n  instructions (below) to compile the project.  If you don't have an\n  existing Zulip account to login with, you can create one on the\n  Zulip development community server at https://zulip.tabbott.net/.\n  Note that this server is used for development discussions, so don't\n  use it for sending lots of test messages!\n\n- For testing, it can be helpful to have your own Zulip development\n  server that the app can connect to.  Instructions for setting up a\n  Zulip development server are here:\n  http://zulip.readthedocs.io/en/latest/dev-overview.html\n\n- And then follow the `Connecting to a development server`_ guide to get the\n  Android app to connect to the Zulip development server.\n\n.. _Connecting to a development server: #connecting-to-a-development-server\n\nGetting Help\n---------------\n\n- For real-time help, you can join the Zulip development community's\n  Zulip server at https://zulip.tabbott.net and post on the `android`\n  stream.\n\n- For questions on development for the Zulip Android App you can post here:\nhttps://groups.google.com/forum/#!forum/zulip-android\n\n- For questions on development for the Zulip Server you can post here:\nhttps://groups.google.com/forum/#!forum/zulip-devel\n\nAny issues or bugs should be posted in the Github Issue Tracker!\n\n\nBuild instructions (Android Studio)\n-----------------------------------\n\n0. Fork the zulip-android repository from GitHub and clone your fork.\n\n1. Open the project in the IDE.\n    a) From the \"Welcome to Android Studio\" menu, select \"Open an\n       existing Android Studio project\" option, or\n    b) If you already have an opened project, select \"File \u003e Open...\"\n\n2. If you want to test Google sign in, add the required metadata:\n    1. Go to https://developers.google.com/mobile/add?platform=android\n    2. Type in \"Zulip\" as \"App name\" and \"com.zulip.android\" as\n       \"Android package name\" and continue to Choose and configure services.\n    3. Select the \"Google Sign-In\" service, you'll need to provide the\n       SHA-1 of your signing certificate. For that, first follow the manual instructions\n       to Sign Your Release Build and generate a new Key Store\n       if you haven't already:\n       https://developer.android.com/studio/publish/app-signing.html#release-mode\n    4. Use keytool to get the SHA-1 fingerprint of the certificate:\n       ``keytool -exportcert -list -v \\    -alias \u003cyour-key-name\u003e -keystore \u003cpath-to-production-keystore\u003e``\n    5. Put the generated file in the \"app/\" directory of the project.\n    6. Get your Google app id from the Google Developer console, and\n       add it as the following string resource in\n       ``app/src/main/res/values/strings.xml``::\n            \u003cstring name=\"google_app_id\"\u003eGOOGLE_APP_ID\u003c/string\u003e\n\nIf you have a device running Android go to the settings and enable USB\ndebugging in developer options. Then plug your device in the computer\nand select \"Run \u003e Run...\".  You will be shown \"Device chooser\" window.\nSelect your device in the given list and press \"OK\".\n\nIf you do not have an Android device you will have to run it on an\nemulator. Here are instructions for creating an Android virtual device\n(AVD):\n\nhttp://developer.android.com/tools/devices/managing-avds.html#createavd\n\nBuild instructions (without Android Studio)\n-------------------------------------------\n\n1. Install the Android SDK including at least the API 23 (Android 6.0),\n   Build Tools, API Platform, Google APIs, Google Play Services,\n   Android Support Library, the Local Maven Repository for Support and\n   the Google Repository.\n\n   All of these can be installed, together with their dependencies,\n   using the Android SDK manager.\n\n2. Comment out or remove references to Crashlytics. The following are\n   known references as at ``5de0b0e``. For future versions,\n   ``grep -ir crashlytics .`` is your friend.\n\n   If you do not remove Crashlytics then the app will crash on startup\n   unless Crashlytics has been set up correctly as a member of the zulip\n   team.\n\n* In ``app/src/main/java/com/zulip/android/ZLog.java``:\n\n  * Line 5: ``import com.crashlytics.android.Crashlytics;``\n\n  * Line 13: ``Crashlytics.logException(e);``\n\n* In ``app/src/main/java/com/zulip/android/ZulipActivity.java``:\n\n  * Line 50: ``import com.crashlytics.android.Crashlytics;``\n\n  * Line 162: ``Crashlytics.start(this);``\n\n3. Run ``./gradlew`` (or ``gradlew.bat`` on Windows). This should\n   automatically build the application, downloading anything it\n   needs to do so.\n\n   If you get a failed build with\n   ``A problem occurred configuring project ':app'.`` then you might\n   not have all the required SDK libraries. Make sure that you have\n   all the dependencies of the libraries listed above, and that all\n   versions match precisely.\n\n   If the appropriate tools cannot be found by gradle, make sure that\n   ``ANDROID_HOME`` is properly set (this should point to the root\n   directory for the Android SDK i.e. the one which contains the add-ons,\n   build-tools, docs and other directories).\n\n4. To build the APK, run ``./gradlew assemble``. Your APKs will be\n   placed in ``app/build/outputs/apk``.\n\n   The ``app-debug.apk`` can be installed directly on the device, or\n   loaded over USB using ``./gradlew installDebug`` or\n   ``adb install /path/to/app/build/outputs/apk/app-debug.apk``.\n\n   Note that ``app-release-unsigned.apk`` will **not** install by\n   default because it is unsigned. You will be told the APK cannot be\n   parsed.\n\nConnecting to a development server\n----------------------------------\n\nOnce you are running a Zulip development server on your laptop, you\nwill need to do some additional configuration of the Android\ndevelopment environment to connect to your development server.\n\n| If you are using a Genymotion Emulator you can access the server by\n  browsing to http://10.0.3.2:9991 or http://10.0.3.1:9991 (one of these\n  two URL’s)\n\nTo access the vagrant server on a physical device:\n\n* connect the computer and Android device to the same network (router)\n\n* modify ``VagrantFile`` `here`_ in the server change the host\\_ip\n  ‘127.0.0.1’ to ‘0.0.0.0’ Like this-\n\n    config.vm.network “forwarded\\_port”, guest: 9991, host: host\\_port,\n    host\\_ip: “0.0.0.0”\n\n* Now find the IP address of the computer, and start the Android app.\n  For the server, specify the computer's IP address and port number as\n  the Zulip Server. For example:\n\n    192.168.0.1:9991\n\n  Note that if you have internet access on your android device through\n  a proxy server, you might have to use a VPN application like `this\n  one`_ to connect to the server.\n\n| You can also route the IP address to a domain name like\n  www.local.test.com (this routing is useful when testing the Google OAuth\n  Backend)\n| No need to modify the ``VagrantFile`` to achieve this\n\n-  Remap the hosts by fiddler by adding this line in TOOLS\u003e HOSTS\n\n    localhost:9991 www.local.test.com\n\nIf unclear you can follow tutorial here `Host Remapping`_\n\n-  Now configure your android device following `this`_ detailed tutorial\n\nAnother way to connect android device to local server is via adb\n\n-  Run server on laptop(or Desktop)\n\n-  By default, it run's on port 9991\n\n-  Connect your Android device with laptop and enable usb debugging\n\n-  Run ``adb reverse tcp:9991 tcp:9991`` in terminal\n\n-  Connect to local server by entering url (**http://127.0.0.1:9991**) in app\n\n.. _here: https://github.com/zulip/zulip/blob/1c40df9363b70af0e275c44a03f9627808852616/Vagrantfile#L37\n.. _Host Remapping: http://docs.telerik.com/fiddler/KnowledgeBase/HOSTS\n.. _this one: https://play.google.com/store/apps/details?id=com.psiphon3\u0026hl=en\n.. _this: http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureForAndroid\n\n\nContributing\n------------\n\n* If you're excited about helping with an open issue, make sure to claim the issue by commenting the following in the comment section: \"**@zulipbot** claim\". **@zulipbot** will assign you to the issue and label the issue as **in progress**. For more details, check out |@zulipbot|_.\n\n* For commit messages, be sure to checkout our `commit message style guidelines`_.\n\n* For code style, please read the `Zulip coding style`_ conventions carefully.\n\n.. |@zulipbot| replace:: **@zulipbot**\n.. _@zulipbot: https://github.com/zulip/zulipbot\n.. _commit message style guidelines: https://zulip.readthedocs.io/en/latest/version-control.html#commit-messages\n.. _Zulip coding style: https://zulip.readthedocs.org/en/latest/code-style.html#version-control\n\nMailing List\n------------\n\nThere's a mailing list for questions and development discussions\nrelated to the Zulip Android app:\nhttps://groups.google.com/forum/#!forum/zulip-android.\n\nExport\n------\nThis distribution includes cryptographic software. The country in\nwhich you currently reside may have restrictions on the import,\npossession, use, and/or re-export to another country, of encryption\nsoftware. BEFORE using any encryption software, please check your\ncountry's laws, regulations and policies concerning the import,\npossession, or use, and re-export of encryption software, to see if\nthis is permitted. See http://www.wassenaar.org/ for more information.\n\nThe U.S. Government Department of Commerce, Bureau of Industry and\nSecurity (BIS), has classified this software as Export Commodity\nControl Number (ECCN) 5D002.C.1, which includes information security\nsoftware using or performing cryptographic functions with asymmetric\nalgorithms. The form and manner of this distribution makes it\neligible for export under the License Exception ENC Technology\nSoftware Unrestricted (TSU) exception (see the BIS Export\nAdministration Regulations, Section 740.13) for both object code and\nsource code.\n\nLicense\n-------\n\nCopyright 2012-2016 Dropbox, Inc.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzulip%2Fzulip-android-legacy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzulip%2Fzulip-android-legacy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzulip%2Fzulip-android-legacy/lists"}