Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace notifications library with using platform APIs directly, on Android #2884

Closed
wants to merge 12 commits into from

Commits on Aug 16, 2018

  1. android gitignore: Add Android studio generated files to gitignore

    Add android/app/{.classpath, .project & .settings} to gitignore
    kunall17 committed Aug 16, 2018
    Configuration menu
    Copy the full SHA
    8f95a9d View commit details
    Browse the repository at this point in the history
  2. android notif: Replace ProxyService usage from library by a custom made

    No functional change, implements the ProxyService from the library
    repo to Zulip project.
    
    This adds tools:node="remove" in the Manifest to remove the
    registration of service which is made by the wix notifications library
    The bundle passing is the same
    kunall17 committed Aug 16, 2018
    Configuration menu
    Copy the full SHA
    41877d8 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2018

  1. android notif: Make notification data structure static

    This would make sure there is only 1 instance running in the whole
    application and help in getting a reference of this object from files
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    ce8ed6b View commit details
    Browse the repository at this point in the history
  2. android notif: Clear notifications in ProxyService

    This moves the clearing of conversations in the ProxyService rather
    than the MainApplication and clears out a lot of logic from the
    MainApplication file
    Makes the converstaion LinkedHashMap a static object to have only 1
    object of this data structure in the entire application and easily
    access this object in services
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    166ecd5 View commit details
    Browse the repository at this point in the history
  3. android notif: Patch the manifest from the notifications library

    Uses merge rule markers in the manifest to eliminate the services and
    receivers which were added by the library
    
    And implement the services in our AndroidManifest.xml.
    This is for removing the libary completely in the future commits
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    e0ff98a View commit details
    Browse the repository at this point in the history
  4. android notif: Implement GCM service to process the GCM messages

    This is a service which extends GcmListenerService and recieves the
    incoming GCM messages and send the message to be displayed as a
    notification
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    db5442c View commit details
    Browse the repository at this point in the history
  5. android notif: Migrate the full notification builder logic from library

    to custom implemented service. This has no visible changes only changes
    the service which was used to generate and display the notification.
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    5f503a3 View commit details
    Browse the repository at this point in the history
  6. android notif: Use NotificationCompat instead of Notification

    This would simplify the setSound conditional logic for different API
    versions.
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    47da863 View commit details
    Browse the repository at this point in the history
  7. andorid notif: Implement GCM token refresher services

    Generates GCM token using the sender ID stored in the AndroidManifest
    using an IntentService called GCMIdRefreshHandler.
    An additional service extended by InstanceIDListenerService is used to
    call the intent when the token is automatically updated by the google
    servers.
    
    In the JS side a function called refreshToken can be called via tha
    GcmTokenRefreshReactModule module and when the refresh process is
    completed, it is emitted into a notificationGcmTokenRefreshed event
    which can be collected in the JS module
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    6cd9301 View commit details
    Browse the repository at this point in the history
  8. andorid notif: Narrow on pressed notification in the killed state

    Notification is saved on the native threads and is recieved by the
    javascript thread by the getInitialNotification using the
    ZulipNotificationModule
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    691dcc4 View commit details
    Browse the repository at this point in the history
  9. android notif: Narrow on pressed notification in the running state

    On notification pressed while running state, java emits a notification
    bundle to the listener called `notificationOpened`
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    e095d5a View commit details
    Browse the repository at this point in the history
  10. android notif: Remove dependencies for notifications library

    Also removes the services which were patched in the manifest file
    kunall17 committed Aug 22, 2018
    Configuration menu
    Copy the full SHA
    b6eee02 View commit details
    Browse the repository at this point in the history