├── .gitignore ├── README.md ├── app ├── app.iml ├── build.gradle ├── libs │ ├── anyrtc-1.0.2.jar │ ├── jpush-android-2.1.0.jar │ ├── libammsdk.jar │ ├── msgclient_r1.0.1.jar │ ├── nineoldandroids-2.4.0.jar │ └── pgyer_sdk_2.2.2.jar ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── org │ │ └── dync │ │ └── teameeting │ │ ├── TeamMeetingApp.java │ │ ├── bean │ │ ├── ChatMessage.java │ │ ├── MeetingInfo.java │ │ ├── MeetingList.java │ │ ├── MeetingListEntity.java │ │ ├── MessageList.java │ │ ├── MessageListEntity.java │ │ ├── ReqSndMsgEntity.java │ │ └── SelfData.java │ │ ├── chatmessage │ │ ├── ChatMessageClient.java │ │ └── IChatMessageInteface.java │ │ ├── db │ │ ├── CRUDChat.java │ │ └── chatdao │ │ │ ├── ChatCacheEntity.java │ │ │ ├── ChatCacheEntityDao.java │ │ │ ├── DaoMaster.java │ │ │ └── DaoSession.java │ │ ├── http │ │ ├── HttpContent.java │ │ ├── NetWork.java │ │ └── TmTextHttpResponseHandler.java │ │ ├── receiver │ │ ├── MyReceiver.java │ │ ├── NetWorkReceiver.java │ │ └── PhoneStateReceiver.java │ │ ├── structs │ │ ├── EventType.java │ │ ├── ExtraType.java │ │ ├── HttpApiTpye.java │ │ ├── Intent_KEY.java │ │ ├── JoinActType.java │ │ ├── NetType.java │ │ └── ShareUrl.java │ │ ├── ui │ │ ├── activity │ │ │ ├── BaseActivity.java │ │ │ ├── DialogActivity.java │ │ │ ├── GuideActivity.java │ │ │ ├── InvitePeopleActivity.java │ │ │ ├── JoinMeetingActivity.java │ │ │ ├── MainActivity.java │ │ │ ├── MeetingActivity.java │ │ │ ├── MeetingBaseActivity.java │ │ │ ├── NotifyActivity.java │ │ │ ├── RoomSettingActivity.java │ │ │ └── StartFlashActivity.java │ │ ├── adapter │ │ │ ├── ChatMessageAdapter.java │ │ │ ├── CommonAdapter.java │ │ │ └── SwipeListAdapter.java │ │ └── helper │ │ │ ├── ActivityTaskHelp.java │ │ │ ├── Anims.java │ │ │ ├── DialogHelper.java │ │ │ ├── MeetingAnim.java │ │ │ └── ShareHelper.java │ │ ├── utils │ │ ├── AnyRTCViews.java │ │ ├── LocalUserInfo.java │ │ ├── LogManage.java │ │ ├── MeetingHelper.java │ │ ├── RandData.java │ │ ├── ScreenUtils.java │ │ ├── StringHelper.java │ │ ├── TimeHelper.java │ │ ├── Utils.java │ │ └── VideoViews.java │ │ └── widgets │ │ ├── BottomMenu.java │ │ ├── ConfirmDialog.java │ │ ├── MyListView.java │ │ ├── MySwipeRefreshLayout.java │ │ ├── PopupWindowCustom.java │ │ ├── ReFlashListView.java │ │ ├── RoomControls.java │ │ ├── SlideSwitch.java │ │ ├── VitualKey.java │ │ └── swipe │ │ ├── FrontLayout.java │ │ ├── SwipeLayout.java │ │ └── SwipeLayoutInterface.java │ ├── jniLibs │ └── armeabi-v7a │ │ ├── libanyrtc-jni.so │ │ ├── libanyrtc.so │ │ ├── libanyrtc_h264.so │ │ ├── libjpush210.so │ │ └── libmsgclient-jni.so │ └── res │ ├── anim │ ├── activity_close_enter.xml │ ├── activity_close_exit.xml │ ├── activity_open_enter.xml │ ├── activity_open_exit.xml │ ├── image_progress.xml │ ├── popuphide.xml │ ├── popupshow.xml │ ├── scalebottom.xml │ └── splash.xml │ ├── drawable-hdpi │ ├── btn_invite.png │ ├── btn_join_meeting.png │ ├── close.png │ ├── ic_launcher.png │ ├── ic_richpush_actionbar_back.png │ ├── ic_richpush_actionbar_divider.png │ ├── iv_private.png │ ├── loading_01.png │ ├── loading_02.png │ ├── loading_03.png │ ├── loading_04.png │ ├── loading_05.png │ ├── loading_06.png │ ├── loading_07.png │ ├── loading_08.png │ ├── loading_09.png │ ├── loading_10.png │ ├── loading_11.png │ ├── loading_12.png │ ├── progress_bg.png │ ├── pull_to_refresh_arrow.png │ ├── splash_image_lg.png │ ├── start_bg.png │ └── unread_count_bg.9.png │ ├── drawable-land-hdpi │ ├── splash_image_lg.png │ └── start_bg.png │ ├── drawable-land-xhdpi │ ├── splash_image_lg.png │ ├── start_bg.png │ ├── view_page_1.png │ ├── view_page_2.png │ └── view_page_3.png │ ├── drawable-mdpi │ ├── btn_remind.png │ └── ic_launcher.png │ ├── drawable-xhdpi │ ├── app_ico.png │ ├── arrow_down.png │ ├── arrow_up.png │ ├── btn_camera_back.png │ ├── btn_camera_off.png │ ├── btn_camera_off_select.png │ ├── btn_camera_on.png │ ├── btn_camera_switch.png │ ├── btn_chat.png │ ├── btn_get_room.png │ ├── btn_guide.png │ ├── btn_hang_up.png │ ├── btn_invite.png │ ├── btn_join_meeting.png │ ├── btn_more_setteing.png │ ├── btn_remind.png │ ├── btn_voice_off.png │ ├── btn_voice_on.png │ ├── camera_del.png │ ├── chat_from_bg.9.png │ ├── chat_people_count.png │ ├── chat_to_bg.9.png │ ├── close.png │ ├── copy_link_bg.png │ ├── edittext_bg.png │ ├── empty_hose.png │ ├── guide_bg.png │ ├── ic_launcher.png │ ├── iv_private.png │ ├── main_bg.png │ ├── main_bg_pad.png │ ├── mic_muted.png │ ├── notifications_close.png │ ├── popup_bg.png │ ├── popup_bg2.png │ ├── popup_bg_sire.png │ ├── popup_close.png │ ├── popup_copy_text.png │ ├── popup_ems.png │ ├── popup_weixin.png │ ├── pp_bg.png │ ├── small_mic_muted.png │ ├── splash_image_lg.png │ ├── start_bg.png │ ├── tv_people_count.png │ ├── video_close.png │ ├── video_close_small.png │ ├── view_copy_link.png │ ├── view_delete_room.png │ ├── view_invite_message.png │ ├── view_invite_weixin.png │ ├── view_join_room.png │ ├── view_no_internet.png │ ├── view_notifications.png │ ├── view_notifications_no.png │ ├── view_page_1.png │ ├── view_page_2.png │ ├── view_page_3.png │ └── view_rename_room.png │ ├── drawable-xlarge │ ├── btn_remind.png │ ├── view_page_1.png │ ├── view_page_2.png │ └── view_page_3.png │ ├── drawable-xxhdpi │ ├── btn_join_meeting.png │ └── ic_launcher.png │ ├── drawable │ ├── blue_button_background.xml │ ├── btn_focused_selector.xml │ ├── custom_progressive_dialog_bg.xml │ ├── dialog_background.xml │ ├── dot_focused.xml │ ├── dot_normal.xml │ ├── frame_loading.xml │ ├── gray_button_background.xml │ ├── internet_dialog_bg.xml │ ├── richpush_btn_selector.xml │ ├── select_camera_back.xml │ ├── select_camera_ibtn.xml │ ├── select_camera_off_ibtn.xml │ ├── select_camera_on.xml │ ├── select_camera_switch_ibtn.xml │ ├── select_chat_ibtn.xml │ ├── select_create_btn.xml │ ├── select_hangup_ibtn.xml │ ├── select_main_title_ibtn.xml │ ├── select_more_seeting_ibtn.xml │ ├── select_room_seeting_tv.xml │ └── select_voice_ibtn.xml │ ├── layout-xlarge │ ├── activity_main.xml │ ├── activity_meeting.xml │ ├── activity_room_setting.xml │ ├── include_chatting.xml │ ├── layout.xml │ ├── menu_setting.xml │ └── menu_share.xml │ ├── layout │ ├── activity_dialog.xml │ ├── activity_guide_view_page.xml │ ├── activity_invite_people.xml │ ├── activity_join_meeting.xml │ ├── activity_main.xml │ ├── activity_meeting.xml │ ├── activity_notify.xml │ ├── activity_push_set.xml │ ├── activity_room_setting.xml │ ├── activity_share.xml │ ├── activity_start_flash.xml │ ├── chat_input_msg.xml │ ├── chat_output_msg.xml │ ├── copy_link_view.xml │ ├── customer_notitfication_layout.xml │ ├── dialog_ecaluation.xml │ ├── fragment_main.xml │ ├── head.xml │ ├── header_layout.xml │ ├── include_chatting.xml │ ├── item_notify.xml │ ├── item_room_adapter.xml │ ├── jpush_popwin_layout.xml │ ├── jpush_webview_layout.xml │ ├── list_empty_layout.xml │ ├── menu_setting.xml │ ├── menu_share.xml │ ├── no_internet_view.xml │ ├── popup_layout.xml │ ├── popup_layout_horiz.xml │ ├── progress_view.xml │ ├── test_activity.xml │ └── text_view.xml │ ├── menu │ ├── main.xml │ ├── push_set.xml │ └── share.xml │ ├── raw │ └── ring.ogg │ ├── values-v11 │ └── styles.xml │ ├── values-v14 │ └── styles.xml │ ├── values-w820dp │ └── dimens.xml │ ├── values-xlarge │ ├── dimens.xml │ └── styles.xml │ └── values │ ├── attrs.xml │ ├── colors.xml │ ├── dimens.xml │ ├── jpush_style.xml │ ├── strings.xml │ └── styles.xml ├── build.gradle ├── gradle.properties ├── gradlew ├── gradlew.bat ├── img ├── image.gif └── protree.png ├── import-summary.txt ├── settings.gradle └── sweetAlertDialogLibrary ├── SweetAlertDialogLibrary.iml ├── build.gradle └── src └── main ├── AndroidManifest.xml ├── java ├── cn │ └── pedant │ │ └── SweetAlert │ │ ├── OptAnimationLoader.java │ │ ├── ProgressHelper.java │ │ ├── Rotate3dAnimation.java │ │ ├── SuccessTickView.java │ │ └── SweetAlertDialog.java └── com │ └── pnikosis │ └── materialishprogress │ └── ProgressWheel.java └── res ├── anim ├── error_frame_in.xml ├── error_x_in.xml ├── modal_in.xml ├── modal_out.xml ├── success_bow_roate.xml └── success_mask_layout.xml ├── drawable ├── blue_button_background.xml ├── dialog_background.xml ├── error_center_x.xml ├── error_circle.xml ├── gray_button_background.xml ├── red_button_background.xml ├── success_bow.xml ├── success_circle.xml ├── warning_circle.xml └── warning_sigh.xml ├── layout ├── activity_main.xml └── alert_dialog.xml └── values ├── attrs.xml ├── colors.xml ├── dimens.xml ├── strings.xml └── styles.xml /.gitignore: -------------------------------------------------------------------------------- 1 | # built application files 2 | *.apk 3 | *.ap_ 4 | 5 | # files for the dex VM 6 | *.dex 7 | 8 | # Java class files 9 | *.class 10 | 11 | # generated files 12 | bin/ 13 | gen/ 14 | 15 | # Local configuration file (sdk path, etc) 16 | local.properties 17 | 18 | # Eclipse project files 19 | .classpath 20 | .project 21 | 22 | # Proguard folder generated by Eclipse 23 | proguard/ 24 | 25 | # Intellij project files 26 | *.iml 27 | *.ipr 28 | *.iws 29 | .idea/ 30 | 31 | .gradle 32 | /local.properties 33 | /.idea/workspace.xml 34 | /.idea/libraries 35 | .DS_Store 36 | /build 37 | /captures 38 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | **由于业务原因,该项目暂时停止更新,为推动直播技术的更好发展,公司开源直播推拉流客户端,好学的你可以去看看;** 2 | 3 | 4 | - **[AnyRTC-RTMP 开源推拉流客户端 android-windows-ios](https://github.com/AnyRTC/AnyRTC-RTMP)** 5 | 6 | - **[RTMPCHybridEngine-Android 连麦客户端](https://github.com/AnyRTC/RTMPCHybridEngine-Android)** 7 | 8 | - **[RTMPCHybridEngine-IOS 连麦客户端](https://github.com/AnyRTC/RTMPCHybridEngine-IOS)** 9 | 10 | **公司网址: [www.anyrtc.io](https://www.anyrtc.io)** 11 | 12 | ### [Teameeting 简介](http://xblvip.cn/Teameeting-Android/) 13 | 14 | 一款用集成多人视频通话,群聊功能应用,多达4同时实现通话,多人群聊,同时拥有**Android - IOS - Web- TV盒子**全平台所有版本,轻松实现**全平台**视频通话以及聊天功能。**开放所有源码**,**音频清晰**,断点续传,自适应网速优先音频传输; 15 | 16 | [GitHub地址](https://github.com/Teameeting/Teameeting-Android) 17 | 18 | 欢迎小伙伴们加入该项目和我们一起交流,如果对你有帮助给个 **star** 吧,欢迎`pull requests`(^_^),我们为做得更好而不懈努力; 19 | 20 | ### 项目演示 21 | 22 | ![enter image description here](https://github.com/DyncLang/Teameeting-Android/blob/master/img/image.gif?raw=true) 23 | 24 | [演示地址](http://7xirvo.com1.z0.glb.clouddn.com/meizuhuitest.mp4) 25 | 26 | ### 项目功能 27 | 1. 高清多人视频通话; 28 | 2. 多人群聊语音,群聊天; 29 | 3. 微信分享点击链接即可加入视频通话; 30 | 4. 消息实时提醒; 31 | 5. 无需注册; 32 | 6. 极光推送群聊,视频邀请时时提醒; 33 | 7. 离线消息保持; 34 | 8. 加入聊天室列表自动保存; 35 | 9. 聊天室权限控制以及聊天室控制; 36 | 10. 适配平板以及天猫电视盒子; 37 | 38 | 39 | ### 下载地址 40 | [Android 下载地址](http://app.mi.com/detail/366425) 41 | 42 | [Android-TV 盒子 ](#) 43 | 44 | [ -- IOS -- 下载地址](https://github.com/Teameeting/Teameeting-ios) 45 | 46 | 47 | ### 项目相关开源简介 48 | **视频服务** 49 | **AnyRTC-Server]** https://github.com/AnyRTC](https://github.com/AnyRTC) 50 | 51 | **群聊消息服务** 52 | **Teameeting-MsgServer :**[https://github.com/Teameeting/Teameeting-MsgServer 53 | ](https://github.com/Teameeting/Teameeting-MsgServer) 54 | 55 | **应用接口** 56 | **Teameeting-node.js :** [https://github.com/Teameeting/Teameeting-node.js](https://github.com/Teameeting/Teameeting-node.js) 57 | 58 | **IOS 开源地址** 59 | **Teameeting-IOS :** [https://github.com/Teameeting/Teameeting-ios](https://github.com/Teameeting/Teameeting-ios) 60 | 61 | **Android 开源地址** 62 | **Teameeting-Android :** [https://github.com/Teameeting/Teameeting-Android](https://github.com/Teameeting/Teameeting-Android) 63 | 64 | 65 | ### Android 致以下开源项目开源敬意 66 | > **android-async-http** 67 | 68 | * **Link:** [https://github.com/loopj/android-async-http](https://github.com/loopj/android-async-http) 69 | 70 | > **EventBus** 71 | 72 | * **Link:** [https://github.com/greenrobot/EventBus](https://github.com/greenrobot/EventBus) 73 | 74 | > **NineOldAndroids** 75 | 76 | * **Link:** [https://github.com/JakeWharton/NineOldAndroids](https://github.com/JakeWharton/NineOldAndroids) 77 | 78 | > **logger** 79 | 80 | * **Link:** [https://github.com/orhanobut/logger](https://github.com/orhanobut/logger) 81 | 82 | > **gson** 83 | 84 | * **Link:** [https://github.com/google/gson](https://github.com/google/gson) 85 | 86 | > **greendao** 87 | 88 | * **Link:** [https://github.com/greenrobot/greenDAO](https://github.com/greenrobot/greenDAO) 89 | 90 | ##联系方式
91 | 92 | **QQ群:** **554714720** 93 | 94 | **邮箱:**[zhulang@dync.cc](zhulang@dync.cc)
95 | 96 | 97 | 98 | 99 | **该项目只做交流和学习不做商业用途** 100 | 101 | 102 | # License 103 | 104 | Copyright 2015 SilenceDut 105 | 106 | Licensed under the Apache License, Version 2.0 (the "License");you may not use this 107 | 108 | file except in compliance with the License.You may obtain a copy of the License at 109 | 110 | [http://www.apache.org/licenses/LICENSE-2.0] 111 | 112 | Unless required by applicable law or agreed to in writing, software distributed under 113 | 114 | the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 115 | 116 | ANY KIND, either express or implied. See the License for the specific language 117 | 118 | governing permissions and limitations under the License. 119 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.application' 2 | 3 | android { 4 | compileSdkVersion 23 5 | buildToolsVersion "23.0.2" 6 | 7 | defaultConfig { 8 | applicationId "org.dync.teameeting" 9 | minSdkVersion 16 10 | targetSdkVersion 23 11 | compileOptions { 12 | sourceCompatibility JavaVersion.VERSION_1_7 13 | targetCompatibility JavaVersion.VERSION_1_7 14 | } 15 | 16 | versionCode 37 17 | versionName "1.5.7" 18 | 19 | manifestPlaceholders = [UMENG_CHANNEL_VALUE: "channel_name"] 20 | } 21 | 22 | 23 | buildTypes { 24 | release { 25 | minifyEnabled false 26 | zipAlignEnabled false 27 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 28 | } 29 | } 30 | 31 | 32 | productFlavors { 33 | xiaomi {} 34 | umeng {} 35 | _360 {} 36 | baidu {} 37 | wandoujia {} 38 | } 39 | 40 | 41 | productFlavors.all { flavor -> 42 | flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name] 43 | } 44 | 45 | applicationVariants.all { variant -> 46 | variant.outputs.each { output -> 47 | def outputFile = output.outputFile 48 | if (outputFile != null && outputFile.name.endsWith('.apk')) { 49 | def fileName = "teameeting_${variant.productFlavors[0].name}-${defaultConfig.versionName}.apk" 50 | output.outputFile = new File(outputFile.parent, fileName) 51 | } 52 | } 53 | } 54 | 55 | useLibrary 'org.apache.http.legacy' 56 | } 57 | 58 | dependencies { 59 | compile files('libs/msgclient_r1.0.1.jar') 60 | compile files('libs/jpush-android-2.1.0.jar') 61 | compile files('libs/nineoldandroids-2.4.0.jar') 62 | compile 'com.loopj.android:android-async-http:1.4.7' 63 | compile 'de.greenrobot:eventbus:2.4.0' 64 | compile 'com.orhanobut:logger:1.3' 65 | compile 'com.google.code.gson:gson:2.5' 66 | compile 'de.greenrobot:greendao:2.1.0' 67 | /*debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3.1' 68 | releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3.1'*/ 69 | compile 'com.android.support:support-v4:23.1.1' 70 | compile files('libs/pgyer_sdk_2.2.2.jar') 71 | compile files('libs/libammsdk.jar') 72 | compile 'me.drakeet.materialdialog:library:1.3.0' 73 | compile project(':SweetAlertDialogLibrary') 74 | compile files('libs/anyrtc-1.0.2.jar') 75 | } 76 | -------------------------------------------------------------------------------- /app/libs/anyrtc-1.0.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/libs/anyrtc-1.0.2.jar -------------------------------------------------------------------------------- /app/libs/jpush-android-2.1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/libs/jpush-android-2.1.0.jar -------------------------------------------------------------------------------- /app/libs/libammsdk.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/libs/libammsdk.jar -------------------------------------------------------------------------------- /app/libs/msgclient_r1.0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/libs/msgclient_r1.0.1.jar -------------------------------------------------------------------------------- /app/libs/nineoldandroids-2.4.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/libs/nineoldandroids-2.4.0.jar -------------------------------------------------------------------------------- /app/libs/pgyer_sdk_2.2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/libs/pgyer_sdk_2.2.2.jar -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/bean/ChatMessage.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.bean; 2 | 3 | import java.util.Date; 4 | 5 | 6 | public class ChatMessage { 7 | /** 8 | * message type 9 | */ 10 | private Type type; 11 | 12 | /** 13 | * Message Content 14 | */ 15 | private String content; 16 | 17 | /** 18 | * Date 19 | */ 20 | private Date date; 21 | 22 | /** 23 | * Date format 24 | */ 25 | private String dateStr; 26 | 27 | /** 28 | * who send 29 | */ 30 | private String username; 31 | 32 | 33 | 34 | public ChatMessage(Type type, String msg, String name, String dateStr) { 35 | super(); 36 | this.type = type; 37 | this.content = msg; 38 | this.username = name; 39 | this.dateStr = dateStr; 40 | } 41 | 42 | public String getUsername() { 43 | return username; 44 | } 45 | 46 | public void setUsername(String username) { 47 | this.username = username; 48 | } 49 | 50 | public long getDateStr() { 51 | return Long.valueOf(dateStr); 52 | } 53 | 54 | public void setDateStr(String dateStr) { 55 | this.dateStr = dateStr; 56 | } 57 | 58 | public Date getDate() { 59 | return date; 60 | } 61 | 62 | public Type getType() { 63 | return type; 64 | } 65 | 66 | public void setType(Type type) { 67 | this.type = type; 68 | } 69 | 70 | public String getContent() { 71 | return content; 72 | } 73 | 74 | public void setContent(String content) { 75 | this.content = content; 76 | } 77 | public enum Type {INPUT, 78 | OUTPUT; 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/bean/MeetingInfo.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.bean; 2 | 3 | import java.io.Serializable; 4 | 5 | 6 | /** 7 | * Created by zhangqilu on 2016/1/12. 8 | */ 9 | public class MeetingInfo { 10 | /* info {"meetingid":"400000000492","userid":"b1ea95e9-157f-4c7e-a144-e5636d582ba6","meetname":"1225","meetdesc":"","meetusable":1, 11 | "pushable":1,"meettype1":0,"memnumber":0,"crttime":1452497084808}*/ 12 | private String meetingid; 13 | private String userid; 14 | private String meetname; 15 | private String meetdesc; 16 | private int meetenable; 17 | private int pushable; 18 | private int meettype1; 19 | private int memnumber; 20 | private long crttime; 21 | 22 | public String getMeetingid() { 23 | return meetingid; 24 | } 25 | 26 | public void setMeetingid(String meetingid) { 27 | this.meetingid = meetingid; 28 | } 29 | 30 | public String getUserid() { 31 | return userid; 32 | } 33 | 34 | public void setUserid(String userid) { 35 | this.userid = userid; 36 | } 37 | 38 | public String getMeetname() { 39 | return meetname; 40 | } 41 | 42 | public void setMeetname(String meetname) { 43 | this.meetname = meetname; 44 | } 45 | 46 | public String getMeetdesc() { 47 | return meetdesc; 48 | } 49 | 50 | public void setMeetdesc(String meetdesc) { 51 | this.meetdesc = meetdesc; 52 | } 53 | 54 | public int getMeetenable() { 55 | return meetenable; 56 | } 57 | 58 | public void setMeetenable(int meetenable) { 59 | this.meetenable = meetenable; 60 | } 61 | 62 | public int getPushable() { 63 | return pushable; 64 | } 65 | 66 | public void setPushable(int pushable) { 67 | this.pushable = pushable; 68 | } 69 | 70 | public int getMeettype1() { 71 | return meettype1; 72 | } 73 | 74 | public void setMeettype1(int meettype1) { 75 | this.meettype1 = meettype1; 76 | } 77 | 78 | public int getMemnumber() { 79 | return memnumber; 80 | } 81 | 82 | public void setMemnumber(int memnumber) { 83 | this.memnumber = memnumber; 84 | } 85 | 86 | public long getCrttime() { 87 | return crttime; 88 | } 89 | 90 | public void setCrttime(long crttime) { 91 | this.crttime = crttime; 92 | } 93 | 94 | @Override 95 | public String toString() { 96 | return "MeetingInfo{" + "meetingid='" + meetingid + '\'' + 97 | ", userid='" + userid + '\'' + ", meetname='" + meetname + '\'' + 98 | ", meetdesc='" + meetdesc + '\'' + ", meetusable=" + meetenable + 99 | ", pushable=" + pushable + ", meettype1=" + meettype1 + ", memnumber=" + 100 | memnumber + ", crttime=" + crttime + '}'; 101 | } 102 | } 103 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/bean/MeetingList.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.bean; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | 7 | /** 8 | * Created by zhulang on 2015/12/28 0028. 9 | */ 10 | public class MeetingList { 11 | private int code; 12 | private String message; 13 | private long requestid; 14 | 15 | private List meetingList = new ArrayList(); 16 | 17 | public void setCode(int code) { 18 | this.code = code; 19 | } 20 | 21 | public void setMessage(String message) { 22 | this.message = message; 23 | } 24 | 25 | public void setRequestid(long requestid) { 26 | this.requestid = requestid; 27 | } 28 | 29 | public void setMeetingList(List meetingList) { 30 | this.meetingList = meetingList; 31 | } 32 | 33 | public int getCode() { 34 | return code; 35 | } 36 | 37 | public String getMessage() { 38 | return message; 39 | } 40 | 41 | public long getRequestid() { 42 | return requestid; 43 | } 44 | 45 | public List getMeetingList() { 46 | return meetingList; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/bean/MessageList.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.bean; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * Created by zhangqilu on 2016/1/14. 7 | */ 8 | public class MessageList { 9 | 10 | private long requestid; 11 | private int code; 12 | private String message; 13 | 14 | private List messageList; 15 | 16 | public void setRequestid(long requestid) { 17 | this.requestid = requestid; 18 | } 19 | 20 | public void setCode(int code) { 21 | this.code = code; 22 | } 23 | 24 | public void setMessage(String message) { 25 | this.message = message; 26 | } 27 | 28 | public void setMessageList(List messageList) { 29 | this.messageList = messageList; 30 | } 31 | 32 | public long getRequestid() { 33 | return requestid; 34 | } 35 | 36 | public int getCode() { 37 | return code; 38 | } 39 | 40 | public String getMessage() { 41 | return message; 42 | } 43 | 44 | public List getMessageList() { 45 | return messageList; 46 | } 47 | 48 | } 49 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/bean/MessageListEntity.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.bean; 2 | 3 | /** 4 | * Created by zhangqilu on 2016/1/14. 5 | */ 6 | public class MessageListEntity { 7 | 8 | private int id; 9 | private int messagetype; 10 | private String meetingid; 11 | private String sessionid; 12 | private String userid; 13 | private long sendtime; 14 | private String message; 15 | private String username; 16 | 17 | public String getUsername() { 18 | return username; 19 | } 20 | 21 | public void setUsername(String username) { 22 | this.username = username; 23 | } 24 | 25 | public void setId(int id) { 26 | this.id = id; 27 | } 28 | 29 | public void setMessagetype(int messagetype) { 30 | this.messagetype = messagetype; 31 | } 32 | 33 | public void setMeetingid(String meetingid) { 34 | this.meetingid = meetingid; 35 | } 36 | 37 | public void setSessionid(String sessionid) { 38 | this.sessionid = sessionid; 39 | } 40 | 41 | public void setUserid(String userid) { 42 | this.userid = userid; 43 | } 44 | 45 | public void setSendtime(long sendtime) { 46 | this.sendtime = sendtime; 47 | } 48 | 49 | public void setMessage(String message) { 50 | this.message = message; 51 | } 52 | 53 | public int getId() { 54 | return id; 55 | } 56 | 57 | public int getMessagetype() { 58 | return messagetype; 59 | } 60 | 61 | public String getMeetingid() { 62 | return meetingid; 63 | } 64 | 65 | public String getSessionid() { 66 | return sessionid; 67 | } 68 | 69 | public String getUserid() { 70 | return userid; 71 | } 72 | 73 | public long getSendtime() { 74 | return sendtime; 75 | } 76 | 77 | public String getMessage() { 78 | return message; 79 | } 80 | 81 | @Override 82 | public String toString() { 83 | return "MessageListEntity{" + 84 | "id=" + id + 85 | ", messagetype=" + messagetype + 86 | ", meetingid='" + meetingid + '\'' + 87 | ", sessionid='" + sessionid + '\'' + 88 | ", userid='" + userid + '\'' + 89 | ", sendtime=" + sendtime + 90 | ", message='" + message + '\'' + 91 | '}'; 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/chatmessage/IChatMessageInteface.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.chatmessage; 2 | 3 | import org.dync.teameeting.bean.ReqSndMsgEntity; 4 | 5 | /** 6 | * Created by zhulang on 2016/1/9 0009. 7 | */ 8 | public interface IChatMessageInteface { 9 | void onRequesageMsg(ReqSndMsgEntity requestMsg); 10 | } 11 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/db/chatdao/ChatCacheEntity.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.db.chatdao; 2 | 3 | // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. Enable "keep" sections if you want to edit. 4 | 5 | import java.io.Serializable; 6 | 7 | /** 8 | * Entity mapped to table CHAT_CACHE_ENTITY. 9 | */ 10 | public class ChatCacheEntity implements Serializable { 11 | 12 | private Long id; 13 | private String meetingid; 14 | private String userid; 15 | private String content; 16 | private String sendtime; 17 | private Boolean isread; 18 | 19 | 20 | public static String MEETINGID = "MEETINGID"; 21 | public static String USERID = "USERID"; 22 | public static String CONTENT = "CONTENT"; 23 | public static String SENDTIME = "SENDTIME"; 24 | public static String ISREAD = "ISREAD"; 25 | 26 | public ChatCacheEntity() { 27 | } 28 | 29 | public ChatCacheEntity(Long id) { 30 | this.id = id; 31 | } 32 | 33 | public ChatCacheEntity(Long id, String meetingid, String userid, String content, String sendtime, Boolean isread) { 34 | this.id = id; 35 | this.meetingid = meetingid; 36 | this.userid = userid; 37 | this.content = content; 38 | this.sendtime = sendtime; 39 | this.isread = isread; 40 | } 41 | 42 | public ChatCacheEntity(String meetingid, String userid, String content, String sendtime, Boolean isread) { 43 | this.meetingid = meetingid; 44 | this.userid = userid; 45 | this.content = content; 46 | this.sendtime = sendtime; 47 | this.isread = isread; 48 | } 49 | 50 | public Long getId() { 51 | return id; 52 | } 53 | 54 | public void setId(Long id) { 55 | this.id = id; 56 | } 57 | 58 | public String getMeetingid() { 59 | return meetingid; 60 | } 61 | 62 | public void setMeetingid(String meetingid) { 63 | this.meetingid = meetingid; 64 | } 65 | 66 | public String getUserid() { 67 | return userid; 68 | } 69 | 70 | public void setUserid(String userid) { 71 | this.userid = userid; 72 | } 73 | 74 | public String getContent() { 75 | return content; 76 | } 77 | 78 | public void setContent(String content) { 79 | this.content = content; 80 | } 81 | 82 | public String getSendtime() { 83 | return sendtime; 84 | } 85 | 86 | public long getSendtimeOrlong() { 87 | return Long.parseLong(sendtime); 88 | } 89 | 90 | public void setSendtime(String sendtime) { 91 | this.sendtime = sendtime; 92 | } 93 | 94 | public Boolean getIsread() { 95 | return isread; 96 | } 97 | 98 | public void setIsread(Boolean isread) { 99 | this.isread = isread; 100 | } 101 | 102 | @Override 103 | public String toString() { 104 | return "ChatCacheEntity{" + 105 | "meetingid='" + meetingid + '\'' + 106 | ", userid='" + userid + '\'' + 107 | ", content='" + content + '\'' + 108 | ", sendtime='" + sendtime + '\'' + 109 | ", isread=" + isread + 110 | '}'; 111 | } 112 | 113 | 114 | } 115 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/db/chatdao/DaoMaster.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.db.chatdao; 2 | 3 | import android.content.Context; 4 | import android.database.sqlite.SQLiteDatabase; 5 | import android.database.sqlite.SQLiteDatabase.CursorFactory; 6 | import android.database.sqlite.SQLiteOpenHelper; 7 | import android.util.Log; 8 | import de.greenrobot.dao.AbstractDaoMaster; 9 | import de.greenrobot.dao.identityscope.IdentityScopeType; 10 | 11 | 12 | // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. 13 | /** 14 | * Master of DAO (schema version 3): knows all DAOs. 15 | */ 16 | public class DaoMaster extends AbstractDaoMaster { 17 | public static final int SCHEMA_VERSION = 3; 18 | 19 | /** Creates underlying database table using DAOs. */ 20 | public static void createAllTables(SQLiteDatabase db, boolean ifNotExists) { 21 | ChatCacheEntityDao.createTable(db, ifNotExists); 22 | } 23 | 24 | /** Drops underlying database table using DAOs. */ 25 | public static void dropAllTables(SQLiteDatabase db, boolean ifExists) { 26 | ChatCacheEntityDao.dropTable(db, ifExists); 27 | } 28 | 29 | public static abstract class OpenHelper extends SQLiteOpenHelper { 30 | 31 | public OpenHelper(Context context, String name, CursorFactory factory) { 32 | super(context, name, factory, SCHEMA_VERSION); 33 | } 34 | 35 | @Override 36 | public void onCreate(SQLiteDatabase db) { 37 | Log.i("greenDAO", "Creating tables for schema version " + SCHEMA_VERSION); 38 | createAllTables(db, false); 39 | } 40 | } 41 | 42 | /** WARNING: Drops all table on Upgrade! Use only during development. */ 43 | public static class DevOpenHelper extends OpenHelper { 44 | public DevOpenHelper(Context context, String name, CursorFactory factory) { 45 | super(context, name, factory); 46 | } 47 | 48 | @Override 49 | public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 50 | Log.i("greenDAO", "Upgrading schema from version " + oldVersion + " to " + newVersion + " by dropping all tables"); 51 | dropAllTables(db, true); 52 | onCreate(db); 53 | } 54 | } 55 | 56 | public DaoMaster(SQLiteDatabase db) { 57 | super(db, SCHEMA_VERSION); 58 | registerDaoClass(ChatCacheEntityDao.class); 59 | } 60 | 61 | public DaoSession newSession() { 62 | return new DaoSession(db, IdentityScopeType.Session, daoConfigMap); 63 | } 64 | 65 | public DaoSession newSession(IdentityScopeType type) { 66 | return new DaoSession(db, type, daoConfigMap); 67 | } 68 | 69 | } 70 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/db/chatdao/DaoSession.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.db.chatdao; 2 | 3 | import android.database.sqlite.SQLiteDatabase; 4 | 5 | import java.util.Map; 6 | 7 | import de.greenrobot.dao.AbstractDao; 8 | import de.greenrobot.dao.AbstractDaoSession; 9 | import de.greenrobot.dao.identityscope.IdentityScopeType; 10 | import de.greenrobot.dao.internal.DaoConfig; 11 | 12 | // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. 13 | 14 | /** 15 | * {@inheritDoc} 16 | * 17 | * @see AbstractDaoSession 18 | */ 19 | public class DaoSession extends AbstractDaoSession { 20 | 21 | private final DaoConfig chatCacheEntityDaoConfig; 22 | 23 | private final ChatCacheEntityDao chatCacheEntityDao; 24 | 25 | public DaoSession(SQLiteDatabase db, IdentityScopeType type, Map>, DaoConfig> 26 | daoConfigMap) { 27 | super(db); 28 | 29 | chatCacheEntityDaoConfig = daoConfigMap.get(ChatCacheEntityDao.class).clone(); 30 | chatCacheEntityDaoConfig.initIdentityScope(type); 31 | 32 | chatCacheEntityDao = new ChatCacheEntityDao(chatCacheEntityDaoConfig, this); 33 | 34 | registerDao(ChatCacheEntity.class, chatCacheEntityDao); 35 | } 36 | 37 | public void clear() { 38 | chatCacheEntityDaoConfig.getIdentityScope().clear(); 39 | } 40 | 41 | public ChatCacheEntityDao getChatCacheEntityDao() { 42 | return chatCacheEntityDao; 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/http/HttpContent.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.http; 2 | 3 | import com.loopj.android.http.AsyncHttpClient; 4 | import com.loopj.android.http.AsyncHttpResponseHandler; 5 | import com.loopj.android.http.RequestParams; 6 | 7 | /** 8 | * Created by Zlang on 2015/12/25 00:25. 9 | *

10 | * net Content 11 | */ 12 | public class HttpContent { 13 | public static final String NODE_URL = "http://123.59.68.21:8055/"; 14 | //public static final String NODE_URL = "http://192.168.7.49:8055/";//123.59.68.21:8055 15 | public static final String SERVICE_URL = "message.anyrtc.io"; 16 | // public static final String SERVICE_URL = "192.168.7.43"; 17 | public static final Integer MSG_SERVICE_POINT = 6630; 18 | private static AsyncHttpClient client = new AsyncHttpClient(); 19 | 20 | static { 21 | client.addHeader("Accept", "application/json"); 22 | } 23 | 24 | public static void get(String url, AsyncHttpResponseHandler responseHandler) { 25 | url = getAbsoluteUrl(url); 26 | client.get(url, responseHandler); 27 | } 28 | 29 | public static void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) { 30 | client.get(getAbsoluteUrl(url), responseHandler); 31 | } 32 | 33 | public static void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) { 34 | client.post(getAbsoluteUrl(url), params, responseHandler); 35 | } 36 | 37 | private static String getAbsoluteUrl(String relativeUrl) { 38 | return NODE_URL + relativeUrl; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/http/TmTextHttpResponseHandler.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.http; 2 | 3 | import android.os.Bundle; 4 | import android.os.Message; 5 | import android.util.Log; 6 | 7 | import com.google.gson.Gson; 8 | import com.loopj.android.http.TextHttpResponseHandler; 9 | import com.orhanobut.logger.Logger; 10 | 11 | import org.apache.http.Header; 12 | import org.dync.teameeting.TeamMeetingApp; 13 | import org.dync.teameeting.structs.EventType; 14 | import org.json.JSONException; 15 | import org.json.JSONObject; 16 | 17 | import de.greenrobot.event.EventBus; 18 | 19 | /** 20 | * Created by zhulang on 2015/12/28 0028. 21 | */ 22 | public class TmTextHttpResponseHandler extends TextHttpResponseHandler { 23 | String TAG = this.getClass().getSimpleName(); 24 | public boolean mDebug = TeamMeetingApp.mIsDebug; 25 | public Gson gson = null; 26 | public Bundle bundle; 27 | public Message msg; 28 | 29 | public TmTextHttpResponseHandler() { 30 | super("UTF-8"); 31 | gson = new Gson(); 32 | msg = new Message(); 33 | bundle = new Bundle(); 34 | } 35 | 36 | @Override 37 | public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) { 38 | // network or server problem 39 | Logger.e("onFailure: "+statusCode+"-----responseString" +responseString); 40 | msg.what = EventType.MSG_RESPONS_ESTR_NULl.ordinal(); 41 | EventBus.getDefault().post(msg); 42 | } 43 | 44 | @Override 45 | public void onSuccess(int statusCode, Header[] headers, String responseString) { 46 | JSONObject jsonObject = null; 47 | String message = null; 48 | try { 49 | jsonObject = new JSONObject(responseString); 50 | int code = jsonObject.getInt("code"); 51 | message = jsonObject.getString("message"); 52 | this.onSuccess(statusCode, code, message, responseString, headers); 53 | this.onSuccess(statusCode, code, message, jsonObject); 54 | } catch (JSONException e) { 55 | e.printStackTrace(); 56 | } 57 | } 58 | 59 | public void onSuccess(int statusCode, int code, String message, String responseString, Header[] headers) { 60 | Log.w("TextHttpResponseHandler", "onSuccess(int, Header[], JSONArray) was not overriden, but callback was received"); 61 | } 62 | 63 | public void onSuccess(int statusCode, int code, String message, JSONObject jsonObject) { 64 | // Log.w("TextHttpResponseHandler", "onSuccess(int, Header[], JSONArray) was not overriden, but callback was received"); 65 | } 66 | 67 | } 68 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/receiver/PhoneStateReceiver.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.receiver; 2 | 3 | import android.app.Service; 4 | 5 | import android.content.BroadcastReceiver; 6 | import android.content.Context; 7 | import android.content.Intent; 8 | 9 | import android.telephony.TelephonyManager; 10 | 11 | import android.util.Log; 12 | 13 | 14 | public class PhoneStateReceiver extends BroadcastReceiver { 15 | @Override 16 | public void onReceive(Context context, Intent intent) { 17 | // TODO Auto-generated method stub 18 | if (intent.getAction().equals("android.intent.action.PHONE_STATE")) { 19 | TelephonyManager tManager = (TelephonyManager) context.getSystemService(Service.TELEPHONY_SERVICE); 20 | 21 | switch (tManager.getCallState()) { 22 | case TelephonyManager.CALL_STATE_RINGING: 23 | Log.e("PhoneStateReveiver", 24 | "phoneNumber: " + 25 | intent.getStringExtra("incoming_number")); 26 | 27 | try { 28 | //RtkApp.the().getCore().getITelephony().endCall(); 29 | } catch (Exception e) { 30 | // TODO Auto-generated catch block 31 | e.printStackTrace(); 32 | } 33 | 34 | break; 35 | 36 | case TelephonyManager.CALL_STATE_OFFHOOK: 37 | break; 38 | 39 | case TelephonyManager.CALL_STATE_IDLE: 40 | break; 41 | } 42 | } 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/EventType.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | 4 | public enum EventType { 5 | 6 | MSG_NET_WORK_TYPE, 7 | 8 | MSG_ININT_SUCCESS, 9 | MSG_ININT_FAILED, 10 | MSG_SIGNOUT_SUCCESS, 11 | MSG_SIGNOUT_FAILED, 12 | MSG_GET_ROOM_LIST_SUCCESS, 13 | MSG_GET_ROOM_LIST_FAILED, 14 | 15 | MSG_RESPONS_ESTR_NULl, 16 | 17 | MSG_APPLY_ROOM_SUCCESS, 18 | MSG_APPLY_ROOMT_FAILED, 19 | MSG_DELETE_ROOM_SUCCESS, 20 | MSG_DELETE_ROOM_FAILED, 21 | MSG_UPDATE_ROOM_ADD_MEM_NUMBER_SUCCESS, 22 | MSG_UPDATE_ROOM_ADD_MEM_NUMBER_FAILED, 23 | MSG_UPDATE_ROOM_Minux_MEM_NUMBER_SUCCESS, 24 | MSG_UPDATE_ROOM_Minux_MEM_NUMBER_FAILED, 25 | 26 | MSG_UPDATE_ROOM_PUSHABLE_SUCCESS, 27 | MSG_UPDATE_ROOM_PUSHABLE_FAILED, 28 | MSG_UPDATE_ROOM_ENABLE_SUCCESS, 29 | MSG_UPDATE_ROOM_ENABLE_FAILED, 30 | 31 | MSG_UPDATE_MEET_ROOM_NAME_SUCCESS, 32 | MSG_UPDATE_MEET_ROOM_NAME_FAILED, 33 | MSG_GET_MEETING_MSG_LIST_SUCCESS, 34 | MSG_GET_MEETING_MSG_LIST_FAILED, 35 | 36 | MSG_INSERT_MEETING_MSG_SUCCESS, 37 | MSG_INSERT_MEETING_MSG_FAILED, 38 | MSG_INSERT_SESSION_MEETING_INFO_SUCCESS, 39 | MSG_INSERT_SESSION_MEETING_INFO_FAILED, 40 | 41 | MSG_UPDATE_SESSION_MEETING_STATUS_SUCCESS, 42 | MSG_UPDATE_SESSION_MEETING_STATUS_FAILED, 43 | 44 | MSG_UPDATE_SESSION_MEETING_ENDTIME_SUCCESS, 45 | MSG_UPDATE_SESSION_MEETING_ENDTIME_FAILED, 46 | 47 | MSG_UPDATE_SESSION_MEETING_NUMBER_SUCCESS, 48 | MSG_UPDATE_SESSION_MEETING_NUMBER_FAILED, 49 | 50 | MSG_UPDAT_EPUSH_TOKEN_SUCCESS, 51 | MSG_UPDAT_EPUSH_TOKEN_FAILED, 52 | 53 | MSG_UP_DATE_USER_MEETING_JOIN_TIME_SUCCESS, 54 | MSG_UP_DATE_USER_MEETING_JOIN_TIME_FAILED, 55 | 56 | MSG_INSERT_USER_MEETING_ROOM_SUCCESS, 57 | MSG_INSERT_USER_MEETING_ROOM_FAILED, 58 | 59 | MSG_PUSH_MEETING_MSG_SUCCESS, 60 | MSG_PUSH_MEETING_MSG_FAILED, 61 | 62 | MSG_PUSH_COMMO_NSG_SUCCESS, 63 | MSG_PUSH_OMMO_NMSG_FAILED, 64 | 65 | MSG_GET_MEETING_INFO_SUCCESS, 66 | MSG_GET_MEETING_INFO_FAILED, 67 | 68 | 69 | /* Message */ 70 | MSG_MESSAGE_LOGIN_SUCCESS, 71 | MSG_MESSAGE_LOGIN_FAILED, 72 | MSG_MESSAGE_LOGOUT_SUCCESS, 73 | MSG_MESSAGE_LOGOUT_FAILED, 74 | 75 | MSG_MESSAGE_RECEIVE, 76 | MSG_MESSAGE_SERVER_CONNECTED, 77 | 78 | MCCMD_ENTER, 79 | MCCMD_LEAVE, 80 | MCCMD_DCOMM, 81 | 82 | JOIN_MEETINGID_EXIST, 83 | MSG_UPDATE_NICKNAME_SUCCESS, 84 | MSG_UPDATE_NICKNAME_FAILED, 85 | 86 | MSG_NOTIFICATION_MAIN, 87 | MSG_NOTIFICATION_MEETINGID_EQUAL, 88 | MSG_NOTIFICATION_MEETING_CLOSE, 89 | MSG_NOTIFICATION_MEETING_CLOSE_MAIN, 90 | 91 | MSG_URL_START_MEETING, 92 | MSG_URL_MEETING_EXIT, 93 | 94 | MSG_ROOMSEETING_ENTER_ROOM, 95 | MSG_NOTIFY_OFF 96 | } 97 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/ExtraType.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | public class ExtraType { 4 | 5 | public final static int REQUEST_CODE_ROOM_SETTING = 1; 6 | public final static int RESULT_CODE_ROOM_SETTING_MESSAGE_INVITE = 2; 7 | public final static int RESULT_CODE_ROOM_SETTING_WEIXIN_INVITE = 3; 8 | public final static int RESULT_CODE_ROOM_SETTING_COPY_LINK = 4; 9 | public final static int RESULT_CODE_ROOM_SETTING_NOTIFICATION = 5; 10 | public final static int RESULT_CODE_ROOM_SETTING_RENAME = 6; 11 | public final static int RESULT_CODE_ROOM_SETTING_DELETE = 7; 12 | public final static int RESULT_CODE_ROOM_SETTING_CLOSE = 8; 13 | public final static int REQUEST_CODE_ROOM_MEETING = 9; 14 | 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/HttpApiTpye.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | /** 4 | * Created by Xiao_Bailong on 2016/1/21. 5 | */ 6 | public class HttpApiTpye { 7 | public static int pushableNO = 0; 8 | public static int pushableYes = 1; 9 | 10 | public static int RoomEnableNo = 0; 11 | public static int RoomEnableYes = 1; 12 | public static int RoomEnablePrivate = 2; 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/Intent_KEY.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | /** 4 | * Created by 小白龙 on 2015/12/29 0029. 5 | */ 6 | public class Intent_KEY 7 | { 8 | public static String MEETING_ENTY = "meeting_enty"; 9 | public static String POSITION = "position"; 10 | public static String URL_MEETING_ID = "url_meeting_id"; 11 | } 12 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/JoinActType.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | /** 4 | * Created by Xiao_Bailong on 2016/1/16. 5 | */ 6 | public class JoinActType { 7 | public static String JOIN_TYPE = "join_TYPE"; 8 | public static String JOIN_INSERT_TYPE = "join_insert"; 9 | public static String JOIN_INSERT_START_ACTIVITY = "join_insert_start_activity"; 10 | public static String JOIN_INSERT_LINK_JOIN_ACTIVITY = "join_insert_link_join_activity"; 11 | public static String JOIN_START_ACTIVITY = "join_start_activity"; 12 | public static String JOIN_ENTER_ACTIVITY = "join_enter_activity"; 13 | public static String JOIN_ENTER_JOIN_ACTIVITY = "join_enter_join_activity"; 14 | public static String JOIN_LINK_JOIN_ACTIVITY = "join_link_join_activity"; 15 | 16 | public static String JOIN_URL_ACTVITY="join_url_activity"; 17 | public static String JOIN_INSERT_URL_ACTIVITY="join_insert_url_activity"; 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/NetType.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | /** 4 | * The type of network connection 5 | * 6 | * @author nyist 7 | */ 8 | public enum NetType { 9 | /** 10 | * No network connection 11 | */ 12 | TYPE_NULL, 13 | /** 14 | * WIFI connection 15 | */ 16 | TYPE_WIFI, 17 | TYPE_WIFI_NULL, 18 | /** 19 | * 4G connection 20 | */ 21 | TYPE_4G, 22 | /** 23 | * 3G connection 24 | */ 25 | TYPE_3G, 26 | /** 27 | * 2G connection 28 | */ 29 | TYPE_2G, 30 | /** 31 | * unkenow connection 32 | */ 33 | TYPE_UNKNOWN 34 | 35 | } 36 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/structs/ShareUrl.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.structs; 2 | 3 | /** 4 | * Created by Xiao_Bailong on 2016/3/29. 5 | */ 6 | public class ShareUrl { 7 | public static String SHARE_URL="https://www.teameeting.cn/share_meetingRoom/#/"; 8 | } 9 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/activity/DialogActivity.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.ui.activity; 2 | 3 | import android.app.Activity; 4 | import android.os.Bundle; 5 | import android.view.View; 6 | 7 | import org.dync.teameeting.R; 8 | 9 | public class DialogActivity extends Activity implements View.OnClickListener { 10 | 11 | @Override 12 | protected void onCreate(Bundle savedInstanceState) { 13 | super.onCreate(savedInstanceState); 14 | setContentView(R.layout.activity_dialog); 15 | } 16 | 17 | 18 | @Override 19 | public void onClick(View v) { 20 | switch (v.getId()) { 21 | //case R.id.btn_ok: 22 | // finish(); 23 | // break; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/activity/MeetingBaseActivity.java: -------------------------------------------------------------------------------- 1 | /** 2 | * BaseAcitvity.java [V 1.0.0] 3 | * classes:org.dync.teammeeting.BaseAcitvity 4 | * Zlang Create at 2015-11-30.下午2:48:42 5 | */ 6 | package org.dync.teameeting.ui.activity; 7 | 8 | import android.app.Activity; 9 | import android.os.Bundle; 10 | import android.os.Looper; 11 | import android.view.View; 12 | import android.widget.RelativeLayout; 13 | 14 | import org.dync.teameeting.R; 15 | import org.dync.teameeting.TeamMeetingApp; 16 | import org.dync.teameeting.bean.ReqSndMsgEntity; 17 | import org.dync.teameeting.chatmessage.ChatMessageClient; 18 | import org.dync.teameeting.chatmessage.IChatMessageInteface; 19 | import org.dync.teameeting.http.NetWork; 20 | 21 | import de.greenrobot.event.EventBus; 22 | 23 | /** 24 | * @author ZLang
25 | * create at 2015-11-30 下午2:48:42 26 | */ 27 | public class MeetingBaseActivity extends Activity implements IChatMessageInteface { 28 | public String TAG = "MeetingBaseActivity"; 29 | public boolean mDebug = TeamMeetingApp.mIsDebug; 30 | private RelativeLayout mainView; 31 | private ChatMessageClient mChatMessageClinet; 32 | String mSign; 33 | NetWork mNetWork; 34 | 35 | @Override 36 | protected void onCreate(Bundle savedInstanceState) { 37 | super.onCreate(savedInstanceState); 38 | mNetWork = new NetWork(); 39 | mainView = (RelativeLayout) View.inflate(this, R.layout.activity_meeting, null); 40 | setContentView(mainView); 41 | registerObserverClinet(); 42 | } 43 | 44 | private void registerObserverClinet() { 45 | mChatMessageClinet = TeamMeetingApp.getmChatMessageClient(); 46 | mChatMessageClinet.registerObserver(chatMessageObserver); 47 | } 48 | 49 | @Override 50 | protected void onResume() { 51 | super.onResume(); 52 | TeamMeetingApp.getTeamMeetingApp().stopMediaplayer(); 53 | } 54 | 55 | /*** 56 | * The message the subscriber 57 | */ 58 | ChatMessageClient.ChatMessageObserver chatMessageObserver = new ChatMessageClient.ChatMessageObserver() { 59 | @Override 60 | public void OnReqSndMsg(final ReqSndMsgEntity reqSndMsg) { 61 | if (Looper.myLooper() != Looper.getMainLooper()) { 62 | runOnUiThread(new Runnable() { 63 | @Override 64 | public void run() { 65 | onRequesageMsg(reqSndMsg); 66 | } 67 | }); 68 | } else { 69 | onRequesageMsg(reqSndMsg); 70 | } 71 | } 72 | 73 | }; 74 | 75 | 76 | @Override 77 | protected void onDestroy() { 78 | super.onDestroy(); 79 | mChatMessageClinet.unregisterObserver(chatMessageObserver); 80 | EventBus.getDefault().unregister(this); 81 | } 82 | 83 | public String getSign() { 84 | return TeamMeetingApp.getmSelfData().getAuthorization(); 85 | } 86 | 87 | public int controllerMoveDistance(View chactView) { 88 | return chactView.getWidth() / 2; 89 | } 90 | 91 | @Override 92 | public void onRequesageMsg(ReqSndMsgEntity requestMsg) { 93 | 94 | } 95 | } 96 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/activity/NotifyActivity.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.ui.activity; 2 | 3 | import android.app.Activity; 4 | import android.content.Intent; 5 | import android.os.Bundle; 6 | import android.os.Message; 7 | import android.view.LayoutInflater; 8 | import android.view.View; 9 | import android.widget.TextView; 10 | 11 | import org.dync.teameeting.R; 12 | import org.dync.teameeting.TeamMeetingApp; 13 | import org.dync.teameeting.http.NetWork; 14 | import org.dync.teameeting.structs.EventType; 15 | import org.dync.teameeting.structs.JoinActType; 16 | 17 | import java.util.List; 18 | 19 | import de.greenrobot.event.EventBus; 20 | import me.drakeet.materialdialog.MaterialDialog; 21 | 22 | /** 23 | * Created by liuxiaozhong on 2016/4/15. 24 | */ 25 | public class NotifyActivity extends Activity { 26 | MaterialDialog dialog; 27 | String roomId; 28 | public NetWork mNetWork; 29 | 30 | @Override 31 | protected void onCreate(Bundle savedInstanceState) { 32 | super.onCreate(savedInstanceState); 33 | setContentView(R.layout.activity_notify); 34 | init(); 35 | 36 | } 37 | 38 | private void init() { 39 | Intent i = getIntent(); 40 | String roomMaster = i.getStringExtra("roomMaster"); 41 | roomId = i.getStringExtra("roomId"); 42 | String roomName = i.getStringExtra("roomName"); 43 | View view = LayoutInflater.from(this).inflate(R.layout.item_notify, null); 44 | TextView title = (TextView) view.findViewById(R.id.tv_notify_title); 45 | TextView room = (TextView) view.findViewById(R.id.tv_notify_roomname); 46 | title.setText(roomMaster + "邀请您加入会议"); 47 | room.setText(roomName); 48 | dialog = new MaterialDialog(this) 49 | .setTitle("通知") 50 | .setContentView(view) 51 | .setPositiveButton("入会", new PositiveButtonOnclick()) 52 | .setNegativeButton("忽略", new View.OnClickListener() { 53 | @Override 54 | public void onClick(View v) { 55 | dialog.dismiss(); 56 | finish(); 57 | } 58 | }); 59 | dialog.show(); 60 | } 61 | 62 | public class PositiveButtonOnclick implements View.OnClickListener { 63 | 64 | @Override 65 | public void onClick(View v) { 66 | meetingDealWith(); 67 | finish(); 68 | } 69 | } 70 | 71 | private void meetingDealWith() { 72 | int position = TeamMeetingApp.getmSelfData().getMeetingIdPosition(roomId); 73 | if (position >= 0) { 74 | Message msg = new Message(); 75 | List activityList = TeamMeetingApp.getMeetingActivityList(); 76 | if (activityList.size()>0){ 77 | String mMeetingId = activityList.get(0); 78 | if (mMeetingId!=null){ 79 | msg.what = EventType.MSG_NOTIFY_OFF.ordinal(); 80 | } 81 | }else { 82 | msg.what = EventType.MSG_ROOMSEETING_ENTER_ROOM.ordinal(); 83 | } 84 | msg.obj = position; 85 | EventBus.getDefault().post(msg); 86 | finish(); 87 | } else { 88 | mNetWork.getMeetingInfo(roomId, JoinActType.JOIN_START_ACTIVITY); 89 | } 90 | 91 | } 92 | 93 | } 94 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/adapter/ChatMessageAdapter.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.ui.adapter; 2 | 3 | import android.annotation.SuppressLint; 4 | import android.content.Context; 5 | import android.view.View; 6 | import android.view.ViewGroup; 7 | import android.widget.LinearLayout; 8 | import android.widget.TextView; 9 | 10 | import org.dync.teameeting.R; 11 | import org.dync.teameeting.bean.ChatMessage; 12 | import org.dync.teameeting.bean.ChatMessage.Type; 13 | import org.dync.teameeting.utils.StringHelper; 14 | 15 | import java.util.List; 16 | 17 | /** 18 | * @author zhulang
19 | *

20 | * 下午3:18:45 21 | */ 22 | public class ChatMessageAdapter extends CommonAdapter { 23 | public ChatMessageAdapter(Context context, List datas) { 24 | super(context, datas); 25 | } 26 | /** 27 | * Receive the message is 1 ,send the messagea is 0 28 | */ 29 | @Override 30 | public int getItemViewType(int position) { 31 | ChatMessage msg = mDatas.get(position); 32 | return msg.getType() == Type.INPUT ? 1 : 0; 33 | } 34 | 35 | @Override 36 | public int getViewTypeCount() { 37 | return 2; 38 | } 39 | 40 | @SuppressLint("ViewHolder") 41 | @Override 42 | public View getView(int position, View convertView, ViewGroup parent) { 43 | ChatMessage chatMessage = mDatas.get(position); 44 | 45 | ViewHolder mHolder = null; 46 | if (convertView == null) { 47 | 48 | if (chatMessage.getType() == Type.INPUT) { 49 | convertView = mInflater.inflate(R.layout.chat_input_msg, null); 50 | } else { 51 | convertView = mInflater.inflate(R.layout.chat_output_msg, null); 52 | } 53 | 54 | mHolder = mHolder.fromValues(convertView); 55 | convertView.setTag(mHolder); 56 | 57 | } else { 58 | mHolder = (ViewHolder) convertView.getTag(); 59 | } 60 | 61 | setData(chatMessage, mHolder); 62 | 63 | return convertView; 64 | } 65 | 66 | private void setData(ChatMessage chatMessage, ViewHolder mHolder) { 67 | mHolder.tvContent.setText(chatMessage.getContent()); 68 | 69 | if (chatMessage.getType() == Type.INPUT) { 70 | mHolder.tvSendName.setText(chatMessage.getUsername()); 71 | } else { 72 | mHolder.tvSendName.setText(R.string.chat_output_name); 73 | } 74 | mHolder.tvTime.setText(StringHelper.format(chatMessage.getDateStr(), mResources)); 75 | } 76 | 77 | private static class ViewHolder { 78 | public LinearLayout llChatLayout; 79 | public TextView tvContent; 80 | public TextView tvSendName; 81 | public TextView tvTime; 82 | 83 | private ViewHolder(LinearLayout llChatLayout, TextView tvContent, TextView tvSendName, 84 | TextView tvTime) { 85 | super(); 86 | this.llChatLayout = llChatLayout; 87 | this.tvContent = tvContent; 88 | this.tvSendName = tvSendName; 89 | this.tvTime = tvTime; 90 | } 91 | 92 | public static ViewHolder fromValues(View view) { 93 | return new ViewHolder((LinearLayout) view.findViewById(R.id.ll_chat_layout), 94 | (TextView) view.findViewById(R.id.tv_chat_content), 95 | (TextView) view.findViewById(R.id.tv_send_name), 96 | (TextView) view.findViewById(R.id.tv_send_time)); 97 | } 98 | } 99 | 100 | } 101 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/adapter/CommonAdapter.java: -------------------------------------------------------------------------------- 1 | /** 2 | * CommonAdapter.java [V 1.0.0] 3 | * classes:com.example.menu.adapter.CommonAdapter 4 | * Zlang Create at 2015-12-1.上午10:15:47 5 | */ 6 | package org.dync.teameeting.ui.adapter; 7 | 8 | import android.content.Context; 9 | import android.content.res.Resources; 10 | import android.view.LayoutInflater; 11 | import android.view.View; 12 | import android.view.ViewGroup; 13 | import android.widget.BaseAdapter; 14 | 15 | import org.dync.teameeting.bean.MeetingListEntity; 16 | 17 | import java.util.List; 18 | 19 | /** 20 | * com.example.menu.adapter.CommonAdapter 21 | * 22 | * @param 23 | * @author ZLang
24 | *

25 | * create at 2015-12-1 上午10:15:47
26 | * versions 1.0 viersion 2.0 27 | */ 28 | public abstract class CommonAdapter extends BaseAdapter { 29 | 30 | protected final Context mContext; 31 | protected final List mDatas; 32 | protected LayoutInflater mInflater; 33 | protected int itemLayoutId; 34 | protected Resources mResources; 35 | 36 | 37 | public CommonAdapter(Context context, List mDatas) { 38 | this(context, mDatas, 0); 39 | } 40 | 41 | /** 42 | * @param context 43 | * @param mDatas 44 | * @param itemLayoutId 45 | */ 46 | public CommonAdapter(Context context, List mDatas, int itemLayoutId) { 47 | mInflater = LayoutInflater.from(context); 48 | this.mContext = context; 49 | this.mDatas = mDatas; 50 | this.itemLayoutId = itemLayoutId; 51 | mResources = context.getResources(); 52 | } 53 | 54 | public void commaMapAdapter(Context context) { 55 | 56 | } 57 | 58 | 59 | public int getMeetingIdPosition(String meetingId) { 60 | for (int i = 0; i < mDatas.size(); i++) { 61 | MeetingListEntity meetingListEntity = (MeetingListEntity) mDatas.get(i); 62 | if (meetingId.equals(meetingListEntity.getMeetingid())) { 63 | return i; 64 | } 65 | } 66 | return -1; 67 | } 68 | 69 | @Override 70 | public int getCount() { 71 | return mDatas.size(); 72 | } 73 | 74 | @Override 75 | public T getItem(int position) { 76 | return mDatas.get(position); 77 | } 78 | 79 | @Override 80 | public long getItemId(int position) { 81 | return position; 82 | } 83 | 84 | @Override 85 | public abstract View getView(int position, View convertView, ViewGroup parent); 86 | 87 | } 88 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/helper/ActivityTaskHelp.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.ui.helper; 2 | 3 | import android.app.ActivityManager; 4 | import android.content.ComponentName; 5 | import android.content.Context; 6 | import android.util.Log; 7 | 8 | import java.util.List; 9 | 10 | /** 11 | * Created by Xiao_Bailong on 2016/2/23. 12 | */ 13 | public class ActivityTaskHelp { 14 | /** 15 | * Determine whether the program is running in the foreground 16 | */ 17 | public static boolean isPackageNameonResume(Context context, String packageName) { 18 | if (packageName == null) { 19 | packageName = context.getPackageName(); 20 | } 21 | Log.e("ActivityTaskHelp", "isPackageNameonResume: " + packageName); 22 | ActivityManager am = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE); 23 | ComponentName cn = am.getRunningTasks(1).get(0).topActivity; 24 | Log.e("ActivityTaskHelp", "pkg:" + cn.getPackageName()); 25 | if (cn.getPackageName().equals(packageName)) { 26 | Log.e("ActivityTaskHelp", "true: "); 27 | return true; 28 | } 29 | Log.e("ActivityTaskHelp", "false: "); 30 | return false; 31 | } 32 | 33 | public static boolean isActivityNameRun(Context context, String className) { 34 | ActivityManager am = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE); 35 | ComponentName cn = am.getRunningTasks(1).get(0).topActivity; 36 | Log.e("e", "pkg:" + cn.getPackageName()); 37 | if (cn.getClassName().equals(className)) { 38 | return true; 39 | } 40 | return false; 41 | } 42 | 43 | /** 44 | * @param context 45 | * @return 46 | */ 47 | public static boolean isBackgroundRunning(Context context) { 48 | String processName = context.getPackageName(); 49 | ActivityManager activityManager = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE); 50 | 51 | if (activityManager == null) return false; 52 | 53 | List processList = activityManager.getRunningAppProcesses(); 54 | for (ActivityManager.RunningAppProcessInfo process : processList) { 55 | if (process.processName.startsWith(processName)) { 56 | return true; 57 | } 58 | } 59 | return false; 60 | } 61 | 62 | 63 | } 64 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/ui/helper/DialogHelper.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.ui.helper; 2 | 3 | import android.content.ClipboardManager; 4 | import android.content.Context; 5 | 6 | import org.dync.teameeting.R; 7 | 8 | import cn.pedant.SweetAlert.SweetAlertDialog; 9 | 10 | public class DialogHelper { 11 | static SweetAlertDialog netErrorSweetAlertDialog = null; 12 | static int i = -1; 13 | 14 | @SuppressWarnings("deprecation") 15 | public static void onClickCopy(Context context, String conpyUrl) { 16 | ClipboardManager cmb = (ClipboardManager) context 17 | .getSystemService(Context.CLIPBOARD_SERVICE); 18 | cmb.setText(conpyUrl); 19 | new SweetAlertDialog(context, SweetAlertDialog.SUCCESS_TYPE) 20 | .setTitleText(context.getString(R.string.dialog_copy_success)).setContentText(context.getString(R.string.dialog_pase_send_friend)).show(); 21 | } 22 | 23 | 24 | public static SweetAlertDialog createPrivateDilaog(Context context) { 25 | SweetAlertDialog sb = new SweetAlertDialog(context, SweetAlertDialog.NORMAL_TYPE); 26 | sb.setTitleText(context.getString(R.string.dialog_open_prive)) 27 | .setContentText(context.getString(R.string.dialog_prive_not_share)) 28 | .setCancelText(context.getString(R.string.dialog_cancel)) 29 | .setConfirmText(context.getString(R.string.dialog_confirm)) 30 | .showCancelButton(true); 31 | return sb; 32 | } 33 | 34 | public static SweetAlertDialog createNetErroDilaog(Context context, SweetAlertDialog.OnSweetClickListener sweetClickListener) { 35 | SweetAlertDialog netErrorSweetAlertDialog = new SweetAlertDialog(context, 36 | SweetAlertDialog.WARNING_TYPE).setTitleText(context.getString(R.string.dialog_network_disconnect)) 37 | .setConfirmText(context.getString(R.string.dialog_try)).setContentText(context.getString(R.string.dialog_please_conn_network)) 38 | .setConfirmClickListener(sweetClickListener); 39 | return netErrorSweetAlertDialog; 40 | } 41 | 42 | public static SweetAlertDialog createAnyRTCLeave(Context context, SweetAlertDialog.OnSweetClickListener sweetClickListener) { 43 | SweetAlertDialog netErrorSweetAlertDialog = new SweetAlertDialog(context, 44 | SweetAlertDialog.WARNING_TYPE).setTitleText(context.getString(R.string.meeting_dialog_anyrtc_leave_title)) 45 | .setConfirmText(context.getString(R.string.dialog_ok)).setContentText(context.getString(R.string.meeting_dialog_anyrtc_leave)) 46 | .setConfirmClickListener(sweetClickListener); 47 | return netErrorSweetAlertDialog; 48 | } 49 | 50 | public static SweetAlertDialog createWarningCancel(Context context) { 51 | SweetAlertDialog sb = new SweetAlertDialog(context, SweetAlertDialog.WARNING_TYPE); 52 | sb.setTitleText(context.getString(R.string.dialog_suer_next_meeting)) 53 | .setContentText(context.getString(R.string.dialog_meeting_exist)) 54 | .setCancelText(context.getString(R.string.dialog_cancel)) 55 | .setConfirmText(context.getString(R.string.dialog_confirm)) 56 | .showCancelButton(true); 57 | return sb; 58 | } 59 | 60 | 61 | } 62 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/utils/LocalUserInfo.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.utils; 2 | 3 | import android.content.Context; 4 | import android.content.SharedPreferences; 5 | 6 | 7 | public class LocalUserInfo { 8 | public static final String PREFERENCE_NAME = "local_userinfo"; 9 | public static final String FIRST_LOGIN = "firstLogin"; 10 | public static final String SET_USER_NAME = "set_user_name"; 11 | public static final String NOTIFIACTION_TAGS = "notifiaction_tags"; 12 | public static final String MAIN_ACTIVE = "main_active"; 13 | private static SharedPreferences mSharedPreferences; 14 | private static LocalUserInfo mPreferenceUtils; 15 | private static SharedPreferences.Editor editor; 16 | 17 | private LocalUserInfo(Context cxt) { 18 | mSharedPreferences = cxt.getSharedPreferences(PREFERENCE_NAME, 19 | Context.MODE_PRIVATE); 20 | } 21 | 22 | /** 23 | * Get Single(global) SharedPreferences 24 | * 25 | * @param cxt 26 | * @return 27 | */ 28 | public static LocalUserInfo getInstance(Context cxt) { 29 | if (mPreferenceUtils == null) { 30 | mPreferenceUtils = new LocalUserInfo(cxt); 31 | } 32 | 33 | editor = mSharedPreferences.edit(); 34 | 35 | return mPreferenceUtils; 36 | } 37 | 38 | public void setUserInfo(String str_name, String str_value) { 39 | editor.putString(str_name, str_value); 40 | editor.commit(); 41 | } 42 | 43 | public void setUserInfoInt(String str_name, int str_value) { 44 | editor.putInt(str_name, str_value); 45 | editor.commit(); 46 | } 47 | 48 | public int getUserInfoInt(String str_name, int i) { 49 | return mSharedPreferences.getInt(str_name, i); 50 | } 51 | 52 | public void setUserInfoBoolean(String str_name, Boolean str_value) { 53 | editor.putBoolean(str_name, str_value); 54 | editor.commit(); 55 | } 56 | 57 | public String getUserInfo(String str_name) { 58 | return mSharedPreferences.getString(str_name, ""); 59 | } 60 | 61 | 62 | public Boolean getUserInfoBoolean(String str_name) { 63 | return mSharedPreferences.getBoolean(str_name, true); 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/utils/LogManage.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.utils; 2 | 3 | import android.util.Log; 4 | 5 | /** 6 | * 7 | * @author zhangqilu 8 | * 9 | */ 10 | public class LogManage 11 | { 12 | 13 | private LogManage() 14 | { 15 | /* cannot be instantiated */ 16 | throw new UnsupportedOperationException("cannot be instantiated"); 17 | } 18 | 19 | public static boolean isDebug = true; 20 | private static final String TAG = "way"; 21 | 22 | public static void i(String msg) 23 | { 24 | if (isDebug) 25 | Log.i(TAG, msg); 26 | } 27 | 28 | public static void d(String msg) 29 | { 30 | if (isDebug) 31 | Log.d(TAG, msg); 32 | } 33 | 34 | public static void e(String msg) 35 | { 36 | if (isDebug) 37 | Log.e(TAG, msg); 38 | } 39 | 40 | public static void v(String msg) 41 | { 42 | if (isDebug) 43 | Log.v(TAG, msg); 44 | } 45 | 46 | public static void i(String tag, String msg) 47 | { 48 | if (isDebug) 49 | Log.i(tag, msg); 50 | } 51 | 52 | public static void d(String tag, String msg) 53 | { 54 | if (isDebug) 55 | Log.i(tag, msg); 56 | } 57 | 58 | public static void e(String tag, String msg) 59 | { 60 | if (isDebug) 61 | Log.i(tag, msg); 62 | } 63 | 64 | public static void v(String tag, String msg) 65 | { 66 | if (isDebug) 67 | Log.i(tag, msg); 68 | } 69 | } -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/utils/MeetingHelper.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.utils; 2 | 3 | import org.dync.teameeting.bean.MeetingListEntity; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | * Created by Xiao_Bailong on 2016/1/21. 9 | */ 10 | public class MeetingHelper { 11 | /** 12 | * if meeting List 13 | * 14 | * @param mDatas 15 | * @param meetingId 16 | * @return -1 postion null , >0 meetingID on arraylist position 17 | */ 18 | public static int getMeetingIdPosition(List mDatas, String meetingId) { 19 | 20 | for (int i = 0; i < mDatas.size(); i++) { 21 | MeetingListEntity meetingListEntity = mDatas.get(i); 22 | if (meetingId.equals(meetingListEntity.getMeetingid())) { 23 | return i; 24 | } 25 | } 26 | return -1; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/utils/RandData.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.utils; 2 | 3 | public class RandData { 4 | 5 | public static String randomString(int len) { 6 | String charSet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; 7 | String randomString = ""; 8 | for (int i = 0; i < len; i++) { 9 | int randomPoz = (int) Math.floor(Math.random() * charSet.length()); 10 | randomString += charSet.substring(randomPoz, randomPoz + 1); 11 | } 12 | return randomString; 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/utils/Utils.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.utils; 2 | 3 | import android.content.Context; 4 | 5 | import android.support.v4.view.MotionEventCompat; 6 | 7 | import android.view.MotionEvent; 8 | 9 | import android.widget.Toast; 10 | 11 | 12 | /** 13 | * 14 | * @author ZLang
15 | * create at 2015-12-1 ??10:35:11 16 | */ 17 | public class Utils { 18 | public static Toast mToast; 19 | 20 | /** 21 | * @param mContext 22 | * @param msg 23 | */ 24 | public static void showToast(Context mContext, String msg) { 25 | if (mToast == null) { 26 | mToast = Toast.makeText(mContext, "", Toast.LENGTH_SHORT); 27 | } 28 | 29 | mToast.setText(msg); 30 | mToast.show(); 31 | } 32 | 33 | /** 34 | * 35 | * @param event 36 | * @return 37 | */ 38 | public static String getActionName(MotionEvent event) { 39 | String action = "unknow"; 40 | 41 | switch (MotionEventCompat.getActionMasked(event)) { 42 | case MotionEvent.ACTION_DOWN: 43 | action = "ACTION_DOWN"; 44 | 45 | break; 46 | 47 | case MotionEvent.ACTION_MOVE: 48 | action = "ACTION_MOVE"; 49 | 50 | break; 51 | 52 | case MotionEvent.ACTION_UP: 53 | action = "ACTION_UP"; 54 | 55 | break; 56 | 57 | case MotionEvent.ACTION_CANCEL: 58 | action = "ACTION_CANCEL"; 59 | 60 | break; 61 | 62 | case MotionEvent.ACTION_OUTSIDE: 63 | action = "ACTION_SCROLL"; 64 | 65 | break; 66 | 67 | default: 68 | break; 69 | } 70 | 71 | return action; 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/ConfirmDialog.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.widgets; 2 | 3 | 4 | import android.app.AlertDialog; 5 | import android.app.Dialog; 6 | import android.content.Context; 7 | import android.content.DialogInterface; 8 | import android.os.Bundle; 9 | import android.view.KeyEvent; 10 | import android.view.View; 11 | import android.widget.Button; 12 | import android.widget.EditText; 13 | import android.widget.TextView; 14 | 15 | import org.dync.teameeting.R; 16 | 17 | /** 18 | * 确定在右,取消在左 19 | */ 20 | public class ConfirmDialog extends AlertDialog implements View.OnClickListener { 21 | 22 | 23 | private String title; 24 | private String userName; 25 | private String ok; 26 | private boolean isdefaut = true; 27 | 28 | private final OnDialogButtonClickListener listener; 29 | private EditText evUsername; 30 | private TextView tvTitleText; 31 | 32 | public ConfirmDialog(Context context, String title, String userName, String ok, OnDialogButtonClickListener listener) { 33 | super(context); 34 | this.title = title; 35 | this.userName = userName; 36 | this.ok = ok; 37 | this.listener = listener; 38 | } 39 | 40 | public ConfirmDialog(Context context, String userName, OnDialogButtonClickListener listener) { 41 | super(context); 42 | this.isdefaut = false; 43 | this.userName = userName; 44 | this.listener = listener; 45 | } 46 | 47 | 48 | @Override 49 | protected void onCreate(Bundle savedInstanceState) { 50 | super.onCreate(savedInstanceState); 51 | setContentView(R.layout.dialog_ecaluation); 52 | tvTitleText = (TextView) findViewById(R.id.tv_title_text); 53 | evUsername = (EditText) findViewById(R.id.et_user_name); 54 | Button btn_ok = (Button) findViewById(R.id.confirm_button); 55 | if (isdefaut) { 56 | tvTitleText.setText(title); 57 | btn_ok.setText(ok); 58 | } 59 | evUsername.setText(userName); 60 | btn_ok.setOnClickListener(this); 61 | } 62 | 63 | 64 | /** 65 | * 对话框按钮单击的监听器 66 | */ 67 | public interface OnDialogButtonClickListener { 68 | 69 | /** 70 | * 当确定按钮被单击的时候会执行 71 | */ 72 | void onOkClick(Dialog dialog, View v, String username); 73 | 74 | } 75 | 76 | @Override 77 | public void onClick(View v) { 78 | switch (v.getId()) { 79 | case R.id.confirm_button: // 确定 80 | if (listener != null) { 81 | listener.onOkClick(this, v, evUsername.getText().toString().trim()); 82 | } 83 | cancel(); 84 | break; 85 | } 86 | } 87 | 88 | } 89 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/MyListView.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.widgets; 2 | 3 | import android.content.Context; 4 | import android.util.AttributeSet; 5 | import android.util.Log; 6 | import android.view.MotionEvent; 7 | import android.widget.ListView; 8 | 9 | /** 10 | * Created by Xiao_Bailong on 2016/1/21. 11 | */ 12 | public class MyListView extends ListView { 13 | public MyListView(Context context) { 14 | super(context); 15 | } 16 | 17 | public MyListView(Context context, AttributeSet attrs) { 18 | super(context, attrs); 19 | } 20 | 21 | public MyListView(Context context, AttributeSet attrs, int defStyle) { 22 | super(context, attrs, defStyle); 23 | } 24 | @Override 25 | protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, 26 | int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent) { 27 | 28 | return super.overScrollBy(deltaX, deltaY, scrollX, scrollY, scrollRangeX, scrollRangeY, 29 | maxOverScrollX, 100, isTouchEvent); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/MySwipeRefreshLayout.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.widgets; 2 | 3 | import android.content.Context; 4 | import android.support.v4.widget.SwipeRefreshLayout; 5 | import android.util.AttributeSet; 6 | import android.util.Log; 7 | import android.view.MotionEvent; 8 | 9 | /** 10 | * Created by H_lang on 2016/1/11. 11 | */ 12 | public class MySwipeRefreshLayout extends SwipeRefreshLayout { 13 | public MySwipeRefreshLayout(Context context) { 14 | super(context); 15 | } 16 | 17 | public MySwipeRefreshLayout(Context context, AttributeSet attrs) { 18 | super(context, attrs); 19 | } 20 | 21 | private int downY; 22 | private int downX; 23 | 24 | @Override 25 | public boolean onInterceptTouchEvent(MotionEvent event) { 26 | final int action = event.getAction(); 27 | switch (action) { 28 | case MotionEvent.ACTION_DOWN: 29 | downY = (int) event.getY(); 30 | downX = (int) event.getX(); 31 | return super.onInterceptTouchEvent(event); 32 | case MotionEvent.ACTION_MOVE: 33 | int deltaY = (int) (event.getY() - downY); 34 | int deltaX = (int) (event.getX() - downX); 35 | if (deltaY - Math.abs(deltaX) > 10) 36 | return super.onInterceptTouchEvent(event); 37 | break; 38 | case MotionEvent.ACTION_UP: 39 | case MotionEvent.ACTION_CANCEL: 40 | break; 41 | } 42 | return false; 43 | } 44 | 45 | 46 | } 47 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/RoomControls.java: -------------------------------------------------------------------------------- 1 | /** 2 | * RoomControls.java [V 1.0.0] 3 | * classes:cn.zldemo.touchitem.view.RoomControls 4 | * Zlang Create at 2015-12-20.下午12:41:12 5 | */ 6 | package org.dync.teameeting.widgets; 7 | 8 | import android.content.Context; 9 | import android.util.AttributeSet; 10 | import android.widget.LinearLayout; 11 | 12 | import org.dync.teameeting.ui.helper.Anims; 13 | import org.dync.teameeting.utils.ScreenUtils; 14 | 15 | /** 16 | * cn.zldemo.touchitem.view.RoomControls 17 | * 18 | * @author ZLang
19 | * create at 2015-12-20 下午12:41:12 20 | */ 21 | public class RoomControls extends LinearLayout { 22 | 23 | public boolean mAvailable; 24 | 25 | public RoomControls(Context paramContext) { 26 | super(paramContext); 27 | init(paramContext, null); 28 | } 29 | 30 | public RoomControls(Context paramContext, AttributeSet paramAttributeSet) { 31 | super(paramContext, paramAttributeSet); 32 | init(paramContext, paramAttributeSet); 33 | } 34 | 35 | public RoomControls(Context paramContext, AttributeSet paramAttributeSet, int paramInt) { 36 | super(paramContext, paramAttributeSet, paramInt); 37 | init(paramContext, paramAttributeSet); 38 | } 39 | 40 | private void init(Context paramContext, AttributeSet paramAttributeSet) { 41 | this.mAvailable = true; 42 | } 43 | 44 | public void hide() { 45 | this.mAvailable = false; 46 | Anims.animateBottomMarginTo(this, ScreenUtils.dpToP(getResources(), -90), 300L, 47 | Anims.ACCELERATE); 48 | makeInvisible(); 49 | } 50 | 51 | public void makeInvisible() { 52 | Anims.fadeOut(this, 300L); 53 | } 54 | 55 | public void show() { 56 | this.mAvailable = true; 57 | Anims.animateBottomMarginTo(this, ScreenUtils.dpToP(getResources(), 20), 300L, 58 | Anims.EASE_OUT); 59 | makeVisible(); 60 | } 61 | 62 | public void makeVisible() { 63 | Anims.fadeIn(this, 300L, 0L); 64 | } 65 | 66 | } 67 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/VitualKey.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.widgets; 2 | 3 | import android.content.Context; 4 | import android.util.AttributeSet; 5 | import android.util.Log; 6 | import android.widget.RelativeLayout; 7 | 8 | /** 9 | * Created by zhangqilu on 2016/3/2. 10 | */ 11 | public class VitualKey extends RelativeLayout { 12 | 13 | private LayoutKeyChange mLayoutKeyChange ; 14 | 15 | public VitualKey(Context context) { 16 | 17 | super(context); 18 | 19 | 20 | } 21 | 22 | public VitualKey(Context context, AttributeSet attrs) { 23 | super(context, attrs); 24 | } 25 | 26 | public VitualKey(Context context, AttributeSet attrs, int defStyleAttr) { 27 | super(context, attrs, defStyleAttr); 28 | } 29 | 30 | 31 | @Override 32 | protected void onLayout(boolean changed, int l, int t, int r, int b) { 33 | super.onLayout(changed, l, t, r, b); 34 | //Log.e("onLayout", "onLayout: b "+b); 35 | if(changed) 36 | mLayoutKeyChange.onLayoutKeyChange(b); 37 | } 38 | 39 | 40 | public void setInterface(LayoutKeyChange layoutKeyChange){ 41 | mLayoutKeyChange = layoutKeyChange; 42 | } 43 | 44 | 45 | public interface LayoutKeyChange{ 46 | public void onLayoutKeyChange(int b); 47 | } 48 | 49 | } 50 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/swipe/FrontLayout.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.widgets.swipe; 2 | 3 | import android.content.Context; 4 | import android.util.AttributeSet; 5 | import android.view.MotionEvent; 6 | import android.widget.RelativeLayout; 7 | 8 | import org.dync.teameeting.widgets.swipe.SwipeLayout.Status; 9 | 10 | public class FrontLayout extends RelativeLayout 11 | { 12 | 13 | private SwipeLayoutInterface mISwipeLayout; 14 | 15 | public FrontLayout(Context context) 16 | { 17 | super(context); 18 | } 19 | 20 | public FrontLayout(Context context, AttributeSet attrs) 21 | { 22 | super(context, attrs); 23 | } 24 | 25 | public FrontLayout(Context context, AttributeSet attrs, int defStyle) 26 | { 27 | super(context, attrs, defStyle); 28 | } 29 | 30 | public void setSwipeLayout(SwipeLayoutInterface mSwipeLayout) 31 | { 32 | this.mISwipeLayout = mSwipeLayout; 33 | } 34 | 35 | @Override 36 | public boolean onInterceptTouchEvent(MotionEvent ev) 37 | { 38 | if (mISwipeLayout.getCurrentStatus() == Status.Close) 39 | { 40 | return super.onInterceptTouchEvent(ev); 41 | } else 42 | { 43 | return true; 44 | } 45 | } 46 | 47 | @Override 48 | public boolean onTouchEvent(MotionEvent event) 49 | { 50 | if (mISwipeLayout.getCurrentStatus() == Status.Close) 51 | { 52 | return super.onTouchEvent(event); 53 | } else 54 | { 55 | if (event.getActionMasked() == MotionEvent.ACTION_UP) 56 | { 57 | mISwipeLayout.close(); 58 | } 59 | return true; 60 | } 61 | } 62 | 63 | } 64 | -------------------------------------------------------------------------------- /app/src/main/java/org/dync/teameeting/widgets/swipe/SwipeLayoutInterface.java: -------------------------------------------------------------------------------- 1 | package org.dync.teameeting.widgets.swipe; 2 | 3 | import org.dync.teameeting.widgets.swipe.SwipeLayout.Status; 4 | 5 | public interface SwipeLayoutInterface { 6 | 7 | Status getCurrentStatus(); 8 | 9 | void close(); 10 | 11 | void open(); 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/jniLibs/armeabi-v7a/libanyrtc-jni.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/jniLibs/armeabi-v7a/libanyrtc-jni.so -------------------------------------------------------------------------------- /app/src/main/jniLibs/armeabi-v7a/libanyrtc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/jniLibs/armeabi-v7a/libanyrtc.so -------------------------------------------------------------------------------- /app/src/main/jniLibs/armeabi-v7a/libanyrtc_h264.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/jniLibs/armeabi-v7a/libanyrtc_h264.so -------------------------------------------------------------------------------- /app/src/main/jniLibs/armeabi-v7a/libjpush210.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/jniLibs/armeabi-v7a/libjpush210.so -------------------------------------------------------------------------------- /app/src/main/jniLibs/armeabi-v7a/libmsgclient-jni.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/jniLibs/armeabi-v7a/libmsgclient-jni.so -------------------------------------------------------------------------------- /app/src/main/res/anim/activity_close_enter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/anim/activity_close_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/anim/activity_open_enter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/anim/activity_open_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/anim/image_progress.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/anim/popuphide.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 14 | 15 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/anim/popupshow.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 14 | 15 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/anim/scalebottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/anim/splash.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 23 | 24 | 31 | 32 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/btn_invite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/btn_invite.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/btn_join_meeting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/btn_join_meeting.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_richpush_actionbar_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/ic_richpush_actionbar_back.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_richpush_actionbar_divider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/ic_richpush_actionbar_divider.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/iv_private.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/iv_private.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_01.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_02.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_03.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_04.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_05.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_06.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_07.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_08.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_09.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_10.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_11.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/loading_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/loading_12.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/progress_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/progress_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/pull_to_refresh_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/pull_to_refresh_arrow.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/splash_image_lg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/splash_image_lg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/start_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/start_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/unread_count_bg.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-hdpi/unread_count_bg.9.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-hdpi/splash_image_lg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-hdpi/splash_image_lg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-hdpi/start_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-hdpi/start_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-xhdpi/splash_image_lg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-xhdpi/splash_image_lg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-xhdpi/start_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-xhdpi/start_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-xhdpi/view_page_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-xhdpi/view_page_1.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-xhdpi/view_page_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-xhdpi/view_page_2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-land-xhdpi/view_page_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-land-xhdpi/view_page_3.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/btn_remind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-mdpi/btn_remind.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/app_ico.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/app_ico.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/arrow_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/arrow_down.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/arrow_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/arrow_up.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_camera_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_camera_back.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_camera_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_camera_off.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_camera_off_select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_camera_off_select.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_camera_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_camera_on.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_camera_switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_camera_switch.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_chat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_chat.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_get_room.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_get_room.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_guide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_guide.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_hang_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_hang_up.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_invite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_invite.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_join_meeting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_join_meeting.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_more_setteing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_more_setteing.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_remind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_remind.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_voice_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_voice_off.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/btn_voice_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/btn_voice_on.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/camera_del.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/camera_del.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/chat_from_bg.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/chat_from_bg.9.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/chat_people_count.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/chat_people_count.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/chat_to_bg.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/chat_to_bg.9.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/copy_link_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/copy_link_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/edittext_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/edittext_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/empty_hose.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/empty_hose.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/guide_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/guide_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/iv_private.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/iv_private.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/main_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/main_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/main_bg_pad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/main_bg_pad.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/mic_muted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/mic_muted.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/notifications_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/notifications_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_bg2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_bg2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_bg_sire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_bg_sire.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_copy_text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_copy_text.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_ems.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_ems.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/popup_weixin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/popup_weixin.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/pp_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/pp_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/small_mic_muted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/small_mic_muted.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/splash_image_lg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/splash_image_lg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/start_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/start_bg.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/tv_people_count.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/tv_people_count.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/video_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/video_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/video_close_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/video_close_small.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_copy_link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_copy_link.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_delete_room.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_delete_room.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_invite_message.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_invite_message.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_invite_weixin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_invite_weixin.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_join_room.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_join_room.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_no_internet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_no_internet.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_notifications.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_notifications.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_notifications_no.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_notifications_no.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_page_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_page_1.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_page_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_page_2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_page_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_page_3.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/view_rename_room.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xhdpi/view_rename_room.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xlarge/btn_remind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xlarge/btn_remind.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xlarge/view_page_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xlarge/view_page_1.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xlarge/view_page_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xlarge/view_page_2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xlarge/view_page_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xlarge/view_page_3.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/btn_join_meeting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xxhdpi/btn_join_meeting.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DyncLang/Teameeting-Android/4c08ce9dcf8e33d5e1df8e2fc67b52c192d87e52/app/src/main/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/blue_button_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/btn_focused_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 8 | 9 | 10 | 11 | 12 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/custom_progressive_dialog_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/dialog_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/dot_focused.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/dot_normal.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 12 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/frame_loading.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 10 | 11 | 12 | 16 | 17 | 18 | 22 | 23 | 24 | 28 | 29 | 30 | 34 | 35 | 36 | 40 | 41 | 42 | 46 | 47 | 48 | 52 | 53 | 54 | 58 | 59 | 60 | 64 | 65 | 66 | 70 | 71 | 72 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/gray_button_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/internet_dialog_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/richpush_btn_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 14 | 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_camera_back.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_camera_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_camera_off_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_camera_on.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_camera_switch_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_chat_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_create_btn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_hangup_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_main_title_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_more_seeting_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_room_seeting_tv.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/select_voice_ibtn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/layout-xlarge/activity_room_setting.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 17 | 18 | 20 | 21 | 22 | 32 | 33 | -------------------------------------------------------------------------------- /app/src/main/res/layout-xlarge/layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/layout-xlarge/menu_share.xml: -------------------------------------------------------------------------------- 1 | 8 | 9 | 14 | 15 | 23 | 24 | 28 | 29 | 40 | 41 | 47 | 48 | 59 | 60 | 66 | 67 | 78 | 79 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_dialog.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 12 | 13 | 21 | 22 | 31 | 32 | 38 | 39 |