##Android Chat Starter
A sample Android App which can be used as a starter application for a chat application.
###What it includes?
- Native Emoji Keyboard - Same as found in WhatsApp
- Chat bubbles - Modeled after WhatsApp
###Screenshots
A starter project for Android chat application
Home Page: http://www.madhur.co.in/blog/2015/03/06/emoji-bubbles-android.html
In emulator emoji works fine as expected
when I tested my app on actual device , the emoji view comes above normal keyboard not hiding it
in my android manifest I put this permission
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
and here is my activity in android manifest
<activity
android:name=".ConversationShowActivity"
android:label="@string/title_activity_conversation_show"
android:launchMode="singleTask"
android:parentActivityName=".MainActivity"
android:theme="@style/AppTheme"
android:windowSoftInputMode="adjustResize" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.reo.myapp.MainActivity" />
</activity>
Hi,
I am getting a runtime exception on below method.
public native static void loadBitmap(String path, Bitmap bitmap, int scale, int width, int height, int stride);
Please help...
Hi,
The Emoji View Window on Landscape Orientation is Small. How can I re-size it with new window width on landscape orientation?
10-21 15:46:20.157 27560-27560/com.collect_up.c_up E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.collect_up.c_up, PID: 27560
java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(2131755185, class android.widget.ListView) with Adapter(class com.collect_up.c_up.adapters.GroupChatAdapter)]
at android.widget.ListView.layoutChildren(ListView.java:1562)
at android.widget.AbsListView.onLayout(AbsListView.java:2151)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1076)
at xxx.xxx.xxx.view.chat.SizeNotifierRelativeLayout.onLayout(SizeNotifierRelativeLayout.java:50)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
at android.view.View.layout(View.java:15671)
at android.view.ViewGroup.layout(ViewGroup.java:5038)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2086)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1843)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1061)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5885)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
at android.view.Choreographer.doCallbacks(Choreographer.java:580)
at android.view.Choreographer.doFrame(Choreographer.java:550)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
The above exception will be thrown and I don't know why! the error points to xxx.xxx.xxx.view.chat.SizeNotifierRelativeLayout.onLayout(SizeNotifierRelativeLayout.java:50)
.
Can you please help me to solve this?
i have found this tutoril http://www.madhur.co.in/blog/2015/03/06/emoji-bubbles-android.html and create project. i have a problem this project , emoje doen't show
Error - No implementation found
Hi,
Please advise on this issue, your help will be greatly appreciated.
I keep getting this error even though i added the jniLibs to my project
Error loading imagejava.lang.UnsatisfiedLinkError: Native method not found: hopon.com.hopon.AndroidUtilities.loadBitmap:(Ljava/lang/String;Landroid/graphics/Bitmap;IIII)V
Hi,
The sample project includes a native library called libchat.so which has no description or sources. What does the library do? Are the sources for that library publicly available?
No implementation found for void com.c4t.wp.AndroidUtilities.loadBitmap(java.lang.String, android.graphics.Bitmap, int, int, int, int) (tried Java_com_c4t_wp_AndroidUtilities_loadBitmap and Java_com_c4t_wp_AndroidUtilities_loadBitmap__Ljava_lang_String_2Landroid_graphics_Bitmap_2IIII)
03-11 11:47:05.297 22605-24447/wp.c4t.com E/TAG: Error loading image
Getting this error... Please help me out...
//Getting issue here
AndroidUtilities.statusBarHeight = getStatusBarHeight();
java.lang.ExceptionInInitializerError at com.activity.EmojiChat.onCreate
Caused by: java.lang.NullPointerException
at com.emoji.AndroidUtilities.<clinit>(AndroidUtilities.java:32)
Error loading image : java.lang.UnsatisfiedLinkError: Native method not found: xxx.xxxxxxx.xxxx.emoji_widgets.AndroidUtilities.loadBitmap:(Ljava/lang/String;Landroid/graphics/Bitmap;IIII)V
I'm just curious, hope you can answer my question. Thank you so much!
Hello Sir,
i got this issue when i apply your code, your demo is working fine but when i apply in my code got error:
chatbubbles: Unable to add window android.view.ViewRootImpl$W@16bdfbe -- permission denied for this window type
please help me or suggest me what i do for resolve this issue.
Thank you.
I have a problem as AndroidUtilities.statusBarHeight = getStatusBarHeight(); returns ExceptionInInitializerError
also can't resolve loadBitmap method also appears to me
Hi,
I found because of NDK, I couldn't run your library, and now I have installed the NDK but I don't know how to compile your project into my project. How can I do that? Thanks.
I am using Emoji Keyboard from this library, I have done everything to show the emoji's in the keyboard, but it says "No Implementation found for Native loadBitmap".
I have copied the same jni Files in /app folder and armeabi, armeabi-v7a, x86 folders under /app/libs directory to include jni support.
Added the below in gradle file:
sourceSets.main {
jniLibs.srcDir 'libs'
jni.srcDirs = [] //disable automatic ndk-build call
}
But when I run my application and try to load Emoji Keybaord it says No Implementation found for loadBitmap.
I have searched for loadBitmap method in your library and I found this under image.c file in jni folder. But what I found is that when I remove this function from this file in your library, Emoji keyboard still show, so I am not able to understand from where exactly this function is coming.
Can you please help me and tell me if I am doing any wrong implementation.
Thank you so much in advanced.
I am currently, facing problem in opening the project in Android Studio. I open it, waited for 30 minutes, but was not opening whereas it opens in Eclipse IDE within seconds. Can you tell me a solution to this problem ?
Emoji.java == @OverRide public int getOpacity() { return 0;} error in 0
EmojiView.java == localTextView.setTextColor(-7829368); error in -7829368 {should use getResouce().GetColor()}
AndroidUtilities.java LoadBitmap
how to setup this application
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.