-
Notifications
You must be signed in to change notification settings - Fork 85
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
*.iml | ||
.gradle | ||
/local.properties | ||
/.idea/caches/build_file_checksums.ser | ||
/.idea/libraries | ||
/.idea/modules.xml | ||
/.idea/workspace.xml | ||
.DS_Store | ||
/build | ||
/captures | ||
.externalNativeBuild |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
<div style="width:100%"> | ||
<div style="width:100%"> | ||
<div style="width:50%; display:inline-block"> | ||
<p align="center"> | ||
<img align="center" width="180" height="180" alt="" src="https://github.com/cometchat-pro/ios-swift-chat-app/blob/master/Screenshots/CometChat%20Logo.png"> | ||
</p> | ||
</div> | ||
</div> | ||
</br> | ||
</br> | ||
</div> | ||
|
||
CometChat Android Demo app (built using **CometChat Pro**) is a fully functional messaging app capable of **one-on-one** (private) and **group** messaging. The app enables users to send **text** and **multimedia messages like audio, video, images, documents.** | ||
|
||
[](#) [](#) | ||
|
||
## Table of Contents | ||
|
||
1. [Screenshots ](#screenshots) | ||
|
||
2. [Installation ](#installtion) | ||
|
||
3. [Run the Sample App ](#run-the-sample-app) | ||
|
||
4. [Customizing the UI](#customizing-the-ui) | ||
|
||
5. [Integrating this sample into your own app](#integrating-this-sample-into-your-own-app) | ||
|
||
5. [Contribute](#contribute) | ||
|
||
|
||
|
||
## ScreenShots | ||
|
||
<img align="left" src="https://github.com/cometchat-pro/android-kotlin-chat-app/blob/master/ScreenShot/screenshots.png"> | ||
|
||
## Installtion | ||
|
||
Simply Clone the project from android-kotlin-chat-app repository and open in Android Studio. | ||
Build the Demo App and it will be ready to Run | ||
|
||
|
||
|
||
|
||
## Run the Sample App | ||
|
||
|
||
|
||
To Run to sample App you have to do the following changes by Adding **ApiKey** and **AppId** | ||
|
||
- Open the Project in Android Mode in Android Studio | ||
|
||
- Go to Under java --> com\inscripts\cometchatpulse--> StringContract | ||
|
||
- Under class `StringContract.kt` go to `class` named `AppDetails` | ||
|
||
- modify *APP_ID* and *API_KEY* with your own **ApiKey** and **AppId** | ||
|
||
`val APP_ID: String = "XXXXXXXXX"` | ||
|
||
`val API_KEY: String = "XXXXXXXXX"` | ||
|
||
## Note | ||
|
||
You can Obtain your *APP_ID* and *API_KEY* from [CometChat-Pulse Dashboard](https://app.cometchat.com/) | ||
|
||
For more information read [CometChat-Pro Android SDK](https://prodocs.cometchat.com/docs/android-quick-start) Documentation | ||
|
||
|
||
|
||
|
||
 | ||
|
||
## Customizing the UI | ||
|
||
We have provided three themes with our sample app namely **PersianBlue, MountainMeadow, AzureRadiance**. To apply the themes: | ||
|
||
- Go to `Application` class `CometChatPro` | ||
|
||
- Create constructor of class `Appearance` and pass any of these three values | ||
|
||
1.PERSIAN_BLUE | ||
|
||
2.MOUNTAIN_MEADOW | ||
|
||
3.AZURE_RADIANCE | ||
|
||
example `Appearance(Appearance.AppTheme.PERSIAN_BLUE)` | ||
|
||
To make your custom appearance go to `Appearance` class under package named Utils i.e | ||
|
||
Go to Under java --> com\inscripts\cometchatpulse--> Utils--> Appearance | ||
|
||
<p align="center"> | ||
<img align="center" width="708.5" height="680" src="https://github.com/cometchat-pro/android-kotlin-chat-app/blob/master/ScreenShot/gib.gif"> | ||
</p> | ||
|
||
|
||
## Integrating this sample into your own app | ||
Copy sample app in your project | ||
|
||
remove login and add your own authentication method | ||
|
||
launch `MainActivity` and start using the app | ||
|
||
## Contribute | ||
|
||
|
||
Feel free to make Pull Request. | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/build |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
apply plugin: 'com.android.application' | ||
|
||
apply plugin: 'kotlin-android' | ||
|
||
apply plugin: 'kotlin-android-extensions' | ||
|
||
apply plugin: 'kotlin-kapt' | ||
|
||
|
||
|
||
android { | ||
compileSdkVersion 28 | ||
defaultConfig { | ||
applicationId "com.inscripts.cometchatpulse" | ||
minSdkVersion 21 | ||
targetSdkVersion 28 | ||
versionCode 1 | ||
versionName "1.0" | ||
resValue "string", "google_maps_key", (project.findProperty("GOOGLE_MAPS_API_KEY") ?: "") | ||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" | ||
|
||
ndk { | ||
abiFilters "armeabi-v7a", "x86" | ||
} | ||
|
||
// packagingOptions { | ||
// exclude "lib/arm64-v8a/libgnustl_shared.so" | ||
// } | ||
|
||
} | ||
dataBinding { | ||
enabled = true | ||
} | ||
|
||
|
||
compileOptions { | ||
sourceCompatibility JavaVersion.VERSION_1_8 | ||
targetCompatibility JavaVersion.VERSION_1_8 | ||
} | ||
|
||
|
||
buildTypes { | ||
release { | ||
minifyEnabled false | ||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' | ||
} | ||
} | ||
|
||
} | ||
|
||
dependencies { | ||
implementation fileTree(dir: 'libs', include: ['*.jar']) | ||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" | ||
implementation 'com.android.support:appcompat-v7:28.0.0' | ||
implementation 'com.android.support.constraint:constraint-layout:1.1.3' | ||
implementation 'com.google.android.gms:play-services-maps:16.0.0' | ||
compile 'com.google.android.gms:play-services-places:16.0.0' | ||
// compile 'com.google.android.gms:play-services:12.0.1' | ||
compile 'com.google.android.gms:play-services-location:16.0.0' | ||
testImplementation 'junit:junit:4.12' | ||
androidTestImplementation 'com.android.support.test:runner:1.0.2' | ||
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' | ||
|
||
implementation 'com.android.support:design:28.0.0' | ||
implementation 'com.android.support:support-v4:28.0.0' | ||
implementation 'com.android.support:recyclerview-v7:28.0.0' | ||
implementation 'com.android.support.constraint:constraint-layout:1.1.3' | ||
implementation 'com.android.support:cardview-v7:28.0.0' | ||
implementation 'com.android.support:support-emoji-appcompat:28.0.0' | ||
implementation 'com.android.support:support-annotations:28.0.0' | ||
|
||
implementation 'com.github.bumptech.glide:glide:4.8.0' | ||
|
||
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0' | ||
|
||
// ViewModel and LiveData | ||
implementation "android.arch.lifecycle:extensions:1.1.1" | ||
|
||
|
||
kapt "android.arch.lifecycle:compiler:1.1.1" | ||
|
||
|
||
//cometchat sdk | ||
implementation 'com.cometchat:pro-android-chat-sdk:1.2.0' | ||
|
||
|
||
implementation 'com.google.firebase:firebase-core:16.+' | ||
|
||
implementation 'com.google.firebase:firebase-messaging:17.3.4' | ||
|
||
implementation 'com.facebook.shimmer:shimmer:0.4.0' | ||
|
||
|
||
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.0" | ||
api "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.0" | ||
|
||
|
||
} | ||
apply plugin: 'com.google.gms.google-services' |