├── .gitignore
├── LICENSE.md
├── README.md
├── app
├── .gitignore
├── build.gradle
├── libs
│ ├── Java-WebSocket-1.3.1-leancloud.jar
│ ├── avoscloud-push-v3.13.8.jar
│ ├── avoscloud-sdk-v3.13.8.jar
│ ├── com.android.volley-2015.05.28.jar
│ ├── fastjson.jar
│ ├── gson-2.4.jar
│ ├── httpmime-4.2.4.jar
│ ├── junit-4.12.jar
│ ├── nineoldandroids-library-2.4.0.jar
│ ├── okhttp-2.6.0-leancloud.jar
│ ├── okio-1.6.0-leancloud.jar
│ ├── pinyin4j-2.5.0.jar
│ ├── protobuf-java-2.6.1.jar
│ └── systembartint-1.0.3.jar
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── me
│ │ └── zq
│ │ └── youjoin
│ │ ├── ApplicationTest.java
│ │ ├── ImageInfoTest.java
│ │ ├── NetworkManagerTest.java
│ │ └── StringUtilsTest.java
│ ├── main
│ ├── AndroidManifest.xml
│ ├── assets
│ │ ├── area.json
│ │ └── pintu
│ │ │ ├── assets
│ │ │ ├── background.png
│ │ │ ├── btBackDisabled.png
│ │ │ ├── btBackDown.png
│ │ │ ├── btBackNormal.png
│ │ │ ├── btMoreDown.png
│ │ │ ├── btMoreNormal.png
│ │ │ ├── btPlayDown.png
│ │ │ ├── btPlayNormal.png
│ │ │ ├── cell_grid.png
│ │ │ ├── copyright.png
│ │ │ ├── ingameFrame.png
│ │ │ ├── labelCongratulations.png
│ │ │ ├── labelMixing.png
│ │ │ ├── labelSuper.png
│ │ │ ├── levelButtons.png
│ │ │ ├── levelLabels.png
│ │ │ ├── loader-anim.gif
│ │ │ ├── logo.png
│ │ │ ├── logoRibbon.png
│ │ │ ├── selectHeaderText.png
│ │ │ └── separator.png
│ │ │ ├── demo.html
│ │ │ └── js
│ │ │ ├── Three.min.js
│ │ │ ├── Tween.js
│ │ │ ├── a.js
│ │ │ ├── bytmain.js
│ │ │ └── store2.js
│ ├── java
│ │ └── me
│ │ │ └── zq
│ │ │ └── youjoin
│ │ │ ├── DataPresenter.java
│ │ │ ├── YouJoinApplication.java
│ │ │ ├── activity
│ │ │ ├── ActivityManager.java
│ │ │ ├── BaseActivity.java
│ │ │ ├── ChooseLocationActivity.java
│ │ │ ├── EditUserInfoActivity.java
│ │ │ ├── MainActivity.java
│ │ │ ├── MessageActivity.java
│ │ │ ├── PluginActivity.java
│ │ │ ├── PluginDownloadActivity.java
│ │ │ ├── PublishActivity.java
│ │ │ ├── SearchUserActivity.java
│ │ │ ├── SignInUpActivity.java
│ │ │ ├── TweetDetailActivity.java
│ │ │ ├── UserInfoActivity.java
│ │ │ └── WelcomeActivity.java
│ │ │ ├── adapter
│ │ │ ├── CommentsAdapter.java
│ │ │ ├── FriendListAdapter.java
│ │ │ ├── GridPhotoAdapter.java
│ │ │ ├── MessageListAdapter.java
│ │ │ ├── SessionListAdapter.java
│ │ │ └── TweetsAdapter.java
│ │ │ ├── db
│ │ │ ├── DatabaseHelper.java
│ │ │ └── DatabaseManager.java
│ │ │ ├── event
│ │ │ ├── FriendUpdateEvent.java
│ │ │ ├── ImTypeMessageEvent.java
│ │ │ ├── ProfileUpdateEvent.java
│ │ │ ├── RefreshLikeEvent.java
│ │ │ ├── SendTweetEvent.java
│ │ │ ├── SigninSuccessEvent.java
│ │ │ └── UserInfoUpdateEvent.java
│ │ │ ├── fragment
│ │ │ ├── AboutFragment.java
│ │ │ ├── AroundFragment.java
│ │ │ ├── BaseFragment.java
│ │ │ ├── FriendFragment.java
│ │ │ ├── MessageFragment.java
│ │ │ ├── PluginFragment.java
│ │ │ └── TweetsFragment.java
│ │ │ ├── imcloud
│ │ │ ├── AVImClientManager.java
│ │ │ └── MessageHandler.java
│ │ │ ├── model
│ │ │ ├── CommentInfo.java
│ │ │ ├── FriendsInfo.java
│ │ │ ├── ImageInfo.java
│ │ │ ├── NewPrimsgInfo.java
│ │ │ ├── PluginInfo.java
│ │ │ ├── PrimsgInfo.java
│ │ │ ├── ResultInfo.java
│ │ │ ├── TweetInfo.java
│ │ │ ├── UpdateUserInfoResult.java
│ │ │ └── UserInfo.java
│ │ │ ├── network
│ │ │ ├── JsonSyntaxError.java
│ │ │ ├── NetworkManager.java
│ │ │ ├── PostObjectRequest.java
│ │ │ ├── PostUploadRequest.java
│ │ │ └── ResponseListener.java
│ │ │ ├── plugin
│ │ │ ├── DownloadProgressListener.java
│ │ │ ├── DownloadThread.java
│ │ │ ├── FileDownloader.java
│ │ │ └── ZipExtractorTask.java
│ │ │ ├── sp
│ │ │ └── SPHelper.java
│ │ │ ├── utils
│ │ │ ├── BitmapUtils.java
│ │ │ ├── FileUtils.java
│ │ │ ├── GlobalUtils.java
│ │ │ ├── LogUtils.java
│ │ │ ├── Md5Utils.java
│ │ │ ├── MimeUtils.java
│ │ │ └── StringUtils.java
│ │ │ └── widget
│ │ │ ├── citypicker
│ │ │ ├── CityPicker.java
│ │ │ ├── CitycodeUtil.java
│ │ │ └── Cityinfo.java
│ │ │ ├── enter
│ │ │ ├── AutoHeightGridView.java
│ │ │ ├── EmojiFragment.java
│ │ │ ├── EmojiTranslate.java
│ │ │ ├── EmojiconSpan.java
│ │ │ ├── EnterEmojiLayout.java
│ │ │ ├── EnterLayout.java
│ │ │ ├── EnterLayoutAnimSupportContainer.java
│ │ │ ├── MyImageGetter.java
│ │ │ └── SimpleTextWatcher.java
│ │ │ ├── recycler
│ │ │ └── RecyclerItemClickListener.java
│ │ │ └── sidebar
│ │ │ ├── CustomEditText.java
│ │ │ └── SideBar.java
│ └── res
│ │ ├── drawable-hdpi
│ │ ├── a00001.png
│ │ ├── a00002.png
│ │ ├── alien.png
│ │ ├── angry.png
│ │ ├── beer.png
│ │ ├── birthday.png
│ │ ├── blush.png
│ │ ├── bomb.png
│ │ ├── book.png
│ │ ├── broken_heart.png
│ │ ├── car.png
│ │ ├── cat.png
│ │ ├── clap.png
│ │ ├── clock10.png
│ │ ├── cloud.png
│ │ ├── coffee.png
│ │ ├── cold_sweat.png
│ │ ├── confounded.png
│ │ ├── cry.png
│ │ ├── disappointed.png
│ │ ├── disappointed_relieved.png
│ │ ├── dizzy_face.png
│ │ ├── dog.png
│ │ ├── facepunch.png
│ │ ├── fearful.png
│ │ ├── fist.png
│ │ ├── flushed.png
│ │ ├── gem.png
│ │ ├── ghost.png
│ │ ├── gift.png
│ │ ├── grin.png
│ │ ├── hankey.png
│ │ ├── heart.png
│ │ ├── heart_eyes.png
│ │ ├── house.png
│ │ ├── ic_sex_boy.png
│ │ ├── ic_sex_girl.png
│ │ ├── iphone.png
│ │ ├── joy.png
│ │ ├── kissing_face.png
│ │ ├── kissing_heart.png
│ │ ├── lips.png
│ │ ├── mag.png
│ │ ├── mask.png
│ │ ├── microphone.png
│ │ ├── money_with_wings.png
│ │ ├── moon.png
│ │ ├── mouse2.png
│ │ ├── muscle.png
│ │ ├── my100.png
│ │ ├── ok_hand.png
│ │ ├── pensive.png
│ │ ├── persevere.png
│ │ ├── pig.png
│ │ ├── point_down.png
│ │ ├── point_left.png
│ │ ├── point_right.png
│ │ ├── point_up_2.png
│ │ ├── rage.png
│ │ ├── relieved.png
│ │ ├── rose.png
│ │ ├── santa.png
│ │ ├── scream.png
│ │ ├── sleepy.png
│ │ ├── smile.png
│ │ ├── smiley.png
│ │ ├── smiling_imp.png
│ │ ├── smirk.png
│ │ ├── sob.png
│ │ ├── soccer.png
│ │ ├── sos.png
│ │ ├── star2.png
│ │ ├── stuck_out_tongue_closed_eyes.png
│ │ ├── stuck_out_tongue_winking_eye.png
│ │ ├── sunny.png
│ │ ├── sweat.png
│ │ ├── umbrella.png
│ │ ├── unamused.png
│ │ ├── v.png
│ │ ├── video_game.png
│ │ ├── wink.png
│ │ ├── zap.png
│ │ └── zzz.png
│ │ ├── drawable-xxhdpi
│ │ ├── bg_avatar.png
│ │ ├── checkbox_follow_fans.png
│ │ ├── checkbox_follow_follow.png
│ │ ├── header.png
│ │ ├── ic_account_circle_white_48dp.png
│ │ ├── ic_add_white_36dp.png
│ │ ├── ic_apps_black_48dp.png
│ │ ├── ic_arrow_back_white_24dp.png
│ │ ├── ic_assignment_return_black_48dp.png
│ │ ├── ic_cancel_black_24dp.png
│ │ ├── ic_comment_black.png
│ │ ├── ic_emoji_small.png
│ │ ├── ic_favorite_black.png
│ │ ├── ic_favorite_black_48dp.png
│ │ ├── ic_group_black_48dp.png
│ │ ├── ic_home_black_48dp.png
│ │ ├── ic_insert_emoticon_white_48dp.png
│ │ ├── ic_insert_photo_white_48dp.png
│ │ ├── ic_keyboard_delete.png
│ │ ├── ic_location_on_black_48dp.png
│ │ ├── ic_menu_white_48dp.png
│ │ ├── ic_more_grey.png
│ │ ├── ic_point_normal.png
│ │ ├── ic_point_select.png
│ │ ├── ic_popup_attachment_rename.png
│ │ ├── ic_search_black_24dp.png
│ │ ├── ic_send_white_48dp.png
│ │ ├── ic_settings_black_48dp.png
│ │ ├── ic_textsms_black_48dp.png
│ │ ├── login_bg.png
│ │ ├── logoshow.png
│ │ ├── open.png
│ │ ├── pause.png
│ │ ├── play.png
│ │ ├── pop_emoji.png
│ │ ├── pop_keyboard.png
│ │ ├── send.png
│ │ ├── user_info_header.jpg
│ │ ├── welcome_top.png
│ │ ├── welcome_viewpager1.png
│ │ ├── welcome_viewpager2.png
│ │ ├── welcome_viewpager3.png
│ │ └── welcome_viewpager4.png
│ │ ├── drawable
│ │ ├── badge_background.xml
│ │ ├── checkbox_follow.xml
│ │ ├── checkbox_pop_emoji.xml
│ │ ├── checkbox_upvote.xml
│ │ ├── contact_select_pinyin_bg.xml
│ │ ├── dividershape.xml
│ │ ├── input_bg.xml
│ │ ├── linearlayoutclick.xml
│ │ ├── msg_item_in_bg.xml
│ │ ├── msg_item_out_bg.xml
│ │ ├── search_input_bg.xml
│ │ ├── signin_button_bg.xml
│ │ └── signup_button_bg.xml
│ │ ├── layout
│ │ ├── bottom_input_layout.xml
│ │ ├── city_spinner.xml
│ │ ├── comment_list_item.xml
│ │ ├── common_enter_emoji.xml
│ │ ├── common_point.xml
│ │ ├── content_message.xml
│ │ ├── content_tweet_detail.xml
│ │ ├── download_plugin_list_item.xml
│ │ ├── dynamic_list_head.xml
│ │ ├── emoji_gridview.xml
│ │ ├── emoji_keyboard_content.xml
│ │ ├── gridview_emotion_emoji.xml
│ │ ├── gridview_photo_item.xml
│ │ ├── image_publish.xml
│ │ ├── msg_item_in.xml
│ │ ├── msg_item_out.xml
│ │ ├── plugin_download_item.xml
│ │ ├── session_list_item.xml
│ │ ├── tweets_list_item.xml
│ │ ├── userlist_item.xml
│ │ ├── userlist_item_content.xml
│ │ ├── welcome_tab1.xml
│ │ ├── welcome_tab2.xml
│ │ ├── welcome_tab3.xml
│ │ ├── yj_activity_choose_location.xml
│ │ ├── yj_activity_edit_user_info.xml
│ │ ├── yj_activity_main.xml
│ │ ├── yj_activity_message.xml
│ │ ├── yj_activity_plugin.xml
│ │ ├── yj_activity_plugin_download.xml
│ │ ├── yj_activity_publish.xml
│ │ ├── yj_activity_search_user.xml
│ │ ├── yj_activity_signin.xml
│ │ ├── yj_activity_tweet_detail.xml
│ │ ├── yj_activity_user_info.xml
│ │ ├── yj_activity_welcome.xml
│ │ ├── yj_content_main.xml
│ │ ├── yj_fragment_about.xml
│ │ ├── yj_fragment_around.xml
│ │ ├── yj_fragment_friend.xml
│ │ ├── yj_fragment_message.xml
│ │ ├── yj_fragment_plugin.xml
│ │ ├── yj_fragment_tweets.xml
│ │ ├── yj_item_publish_photo.xml
│ │ └── yj_navigation_header.xml
│ │ ├── menu
│ │ └── navigation_menu.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-v21
│ │ └── styles.xml
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── attrs.xml
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test
│ └── java
│ └── me
│ └── zq
│ └── youjoin
│ └── ExampleUnitTest.java
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── material-drawer-library
├── .gitignore
├── build.gradle
├── gradle-mvn-push.gradle
├── gradle.properties
├── proguard-rules.txt
└── src
│ └── main
│ ├── AndroidManifest.xml
│ ├── assets
│ └── fonts
│ │ └── materialdrawerfont.ttf
│ ├── java
│ └── com
│ │ └── mikepenz
│ │ └── materialdrawer
│ │ ├── AccountHeader.java
│ │ ├── AccountHeaderBuilder.java
│ │ ├── Drawer.java
│ │ ├── DrawerBuilder.java
│ │ ├── DrawerUtils.java
│ │ ├── MiniDrawer.java
│ │ ├── adapter
│ │ ├── BaseDrawerAdapter.java
│ │ └── DrawerAdapter.java
│ │ ├── holder
│ │ ├── BadgeStyle.java
│ │ ├── ColorHolder.java
│ │ ├── DimenHolder.java
│ │ ├── ImageHolder.java
│ │ └── StringHolder.java
│ │ ├── icons
│ │ └── MaterialDrawerFont.java
│ │ ├── interfaces
│ │ ├── ICrossfader.java
│ │ └── OnCheckedChangeListener.java
│ │ ├── model
│ │ ├── AbstractDrawerItem.java
│ │ ├── BaseDrawerItem.java
│ │ ├── BasePrimaryDrawerItem.java
│ │ ├── BaseSecondaryDrawerItem.java
│ │ ├── ContainerDrawerItem.java
│ │ ├── DividerDrawerItem.java
│ │ ├── MiniDrawerItem.java
│ │ ├── MiniProfileDrawerItem.java
│ │ ├── PrimaryDrawerItem.java
│ │ ├── ProfileDrawerItem.java
│ │ ├── ProfileSettingDrawerItem.java
│ │ ├── SecondaryDrawerItem.java
│ │ ├── SecondarySwitchDrawerItem.java
│ │ ├── SecondaryToggleDrawerItem.java
│ │ ├── SectionDrawerItem.java
│ │ ├── SwitchDrawerItem.java
│ │ ├── ToggleDrawerItem.java
│ │ ├── interfaces
│ │ │ ├── Badgeable.java
│ │ │ ├── ColorfulBadgeable.java
│ │ │ ├── IDrawerItem.java
│ │ │ ├── IProfile.java
│ │ │ ├── Iconable.java
│ │ │ ├── Identifyable.java
│ │ │ ├── Nameable.java
│ │ │ ├── OnPostBindViewListener.java
│ │ │ ├── Selectable.java
│ │ │ ├── Tagable.java
│ │ │ └── Typefaceable.java
│ │ └── utils
│ │ │ ├── BadgeDrawableBuilder.java
│ │ │ └── ViewHolderFactory.java
│ │ ├── util
│ │ ├── AbstractDrawerImageLoader.java
│ │ ├── DrawerImageLoader.java
│ │ ├── DrawerItemViewHelper.java
│ │ ├── DrawerUIUtils.java
│ │ ├── IdDistributor.java
│ │ ├── KeyboardUtil.java
│ │ ├── PressedEffectStateListDrawable.java
│ │ └── RecyclerViewCacheUtil.java
│ │ └── view
│ │ └── BezelImageView.java
│ └── res
│ ├── drawable
│ ├── material_drawer_badge.xml
│ ├── material_drawer_circle_mask.xml
│ ├── material_drawer_shadow_bottom.xml
│ ├── material_drawer_shadow_left.9.png
│ ├── material_drawer_shadow_right.9.png
│ └── material_drawer_shadow_top.xml
│ ├── layout
│ ├── material_drawer.xml
│ ├── material_drawer_compact_header.xml
│ ├── material_drawer_header.xml
│ ├── material_drawer_item_container.xml
│ ├── material_drawer_item_divider.xml
│ ├── material_drawer_item_mini.xml
│ ├── material_drawer_item_mini_profile.xml
│ ├── material_drawer_item_primary.xml
│ ├── material_drawer_item_profile.xml
│ ├── material_drawer_item_profile_setting.xml
│ ├── material_drawer_item_secondary.xml
│ ├── material_drawer_item_secondary_switch.xml
│ ├── material_drawer_item_secondary_toggle.xml
│ ├── material_drawer_item_section.xml
│ ├── material_drawer_item_switch.xml
│ ├── material_drawer_item_toggle.xml
│ ├── material_drawer_recycler_view.xml
│ └── material_drawer_slider.xml
│ ├── values-sw600dp
│ └── dimens.xml
│ └── values
│ ├── attrs.xml
│ ├── colors.xml
│ ├── dimens.xml
│ ├── ids.xml
│ ├── library_materialdrawer_strings.xml
│ ├── strings.xml
│ └── styles.xml
├── multi-image-selector
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── me
│ │ └── nereo
│ │ └── multi_image_selector
│ │ └── ApplicationTest.java
│ └── main
│ ├── AndroidManifest.xml
│ ├── java
│ └── me
│ │ └── nereo
│ │ └── multi_image_selector
│ │ ├── MultiImageSelectorActivity.java
│ │ ├── MultiImageSelectorFragment.java
│ │ ├── PreviewPicturesActivity.java
│ │ ├── adapter
│ │ ├── FolderAdapter.java
│ │ └── ImageGridAdapter.java
│ │ ├── bean
│ │ ├── Folder.java
│ │ └── Image.java
│ │ ├── utils
│ │ ├── FileUtils.java
│ │ └── TimeUtils.java
│ │ └── view
│ │ ├── GestureImageView.java
│ │ └── SuperViewPager.java
│ └── res
│ ├── color
│ ├── default_text_color.xml
│ └── folder_text_color.xml
│ ├── drawable-xhdpi
│ ├── btn_back.png
│ ├── default_check_s.png
│ ├── ic_menu_back.png
│ └── selector_indicator.png
│ ├── drawable-xxhdpi
│ ├── asv.png
│ ├── asy.png
│ ├── btn_selected.png
│ ├── btn_unselected.png
│ ├── default_check.png
│ ├── default_error.png
│ ├── icon_photo_choice.png
│ └── text_indicator.png
│ ├── drawable
│ └── action_btn.xml
│ ├── layout-v14
│ └── fragment_multi_image.xml
│ ├── layout
│ ├── activity_default.xml
│ ├── activity_preview_pictures.xml
│ ├── cmp_customer_actionbar.xml
│ ├── fragment_multi_image.xml
│ ├── item_image.xml
│ ├── list_item_camera.xml
│ ├── list_item_folder.xml
│ └── list_item_image.xml
│ ├── menu
│ └── menu_preview_pictures.xml
│ ├── values-sw1080dp
│ └── dimens.xml
│ ├── values-sw360dp
│ └── dimens.xml
│ ├── values-sw480dp
│ └── dimens.xml
│ ├── values-sw720dp
│ └── dimens.xml
│ ├── values-w820dp
│ └── dimens.xml
│ ├── values-zh
│ └── strings.xml
│ └── values
│ ├── dimens.xml
│ └── strings.xml
└── settings.gradle
/.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 |
32 | .gradle
33 | .DS_Store
34 | /build
35 | /captures
36 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2016 YouJoin Studio
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 23
5 | buildToolsVersion '23.0.3'
6 |
7 | defaultConfig {
8 | applicationId "me.zq.youjoin"
9 | minSdkVersion 17
10 | targetSdkVersion 23
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(include: ['*.jar'], dir: 'libs')
24 | androidTestCompile files('libs/junit-4.12.jar')
25 | compile files('libs/com.android.volley-2015.05.28.jar')
26 | compile files('libs/gson-2.4.jar')
27 | compile project(':multi-image-selector')
28 | compile files('libs/pinyin4j-2.5.0.jar')
29 | compile files('libs/nineoldandroids-library-2.4.0.jar')
30 | compile files('libs/systembartint-1.0.3.jar')
31 | compile project(':material-drawer-library')
32 | compile files('libs/avoscloud-push-v3.13.8.jar')
33 | compile files('libs/avoscloud-sdk-v3.13.8.jar')
34 | compile files('libs/fastjson.jar')
35 | compile files('libs/httpmime-4.2.4.jar')
36 | compile files('libs/Java-WebSocket-1.3.1-leancloud.jar')
37 | compile files('libs/protobuf-java-2.6.1.jar')
38 | compile files('libs/okhttp-2.6.0-leancloud.jar')
39 | compile files('libs/okio-1.6.0-leancloud.jar')
40 | compile 'com.android.support:appcompat-v7:23.4.0'
41 | compile 'com.android.support:design:23.4.0'
42 | compile 'com.android.support:cardview-v7:23.4.0'
43 | compile 'com.android.support:recyclerview-v7:23.4.0'
44 | compile 'com.android.support:support-v4:23.4.0'
45 | compile 'com.squareup.picasso:picasso:2.5.2'
46 | compile 'se.emilsjolander:stickylistheaders:2.7.0'
47 | compile 'de.hdodenhof:circleimageview:1.3.0'
48 | compile 'com.borax12.materialdaterangepicker:library:1.2'
49 | compile 'org.greenrobot:eventbus:3.0.0'
50 | compile 'com.jakewharton:butterknife:7.0.1'
51 | compile 'com.github.ybq:Android-SpinKit:1.0.4'
52 | debugCompile 'com.squareup.leakcanary:leakcanary-android:1.4-beta2'
53 | }
54 |
--------------------------------------------------------------------------------
/app/libs/Java-WebSocket-1.3.1-leancloud.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/Java-WebSocket-1.3.1-leancloud.jar
--------------------------------------------------------------------------------
/app/libs/avoscloud-push-v3.13.8.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/avoscloud-push-v3.13.8.jar
--------------------------------------------------------------------------------
/app/libs/avoscloud-sdk-v3.13.8.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/avoscloud-sdk-v3.13.8.jar
--------------------------------------------------------------------------------
/app/libs/com.android.volley-2015.05.28.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/com.android.volley-2015.05.28.jar
--------------------------------------------------------------------------------
/app/libs/fastjson.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/fastjson.jar
--------------------------------------------------------------------------------
/app/libs/gson-2.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/gson-2.4.jar
--------------------------------------------------------------------------------
/app/libs/httpmime-4.2.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/httpmime-4.2.4.jar
--------------------------------------------------------------------------------
/app/libs/junit-4.12.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/junit-4.12.jar
--------------------------------------------------------------------------------
/app/libs/nineoldandroids-library-2.4.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/nineoldandroids-library-2.4.0.jar
--------------------------------------------------------------------------------
/app/libs/okhttp-2.6.0-leancloud.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/okhttp-2.6.0-leancloud.jar
--------------------------------------------------------------------------------
/app/libs/okio-1.6.0-leancloud.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/okio-1.6.0-leancloud.jar
--------------------------------------------------------------------------------
/app/libs/pinyin4j-2.5.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/pinyin4j-2.5.0.jar
--------------------------------------------------------------------------------
/app/libs/protobuf-java-2.6.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/protobuf-java-2.6.1.jar
--------------------------------------------------------------------------------
/app/libs/systembartint-1.0.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/libs/systembartint-1.0.3.jar
--------------------------------------------------------------------------------
/app/src/androidTest/java/me/zq/youjoin/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package me.zq.youjoin;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/app/src/androidTest/java/me/zq/youjoin/ImageInfoTest.java:
--------------------------------------------------------------------------------
1 | package me.zq.youjoin;
2 |
3 | import android.test.AndroidTestCase;
4 |
5 | import me.zq.youjoin.model.ImageInfo;
6 |
7 | /**
8 | * YouJoin-Android
9 | * Created by ZQ on 2015/11/19.
10 | */
11 | public class ImageInfoTest extends AndroidTestCase {
12 | public void testConstructor(){
13 | String path = "/storage/emulated/0/Images/123.jpg";
14 | ImageInfo info = new ImageInfo(path);
15 | assertEquals(info.getFileName(), "123.jpg");
16 | assertEquals(info.getImagePath(), path);
17 | assertEquals(info.getMime(), "image/jpeg");
18 |
19 | path = "/storage/emulated/0/Images/234.png";
20 | info = new ImageInfo(path);
21 | assertEquals(info.getFileName(), "234.png");
22 | assertEquals(info.getImagePath(), path);
23 | assertEquals(info.getMime(), "image/png");
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/app/src/androidTest/java/me/zq/youjoin/StringUtilsTest.java:
--------------------------------------------------------------------------------
1 | package me.zq.youjoin;
2 |
3 | import android.test.AndroidTestCase;
4 |
5 | import java.util.List;
6 |
7 | import me.zq.youjoin.utils.StringUtils;
8 |
9 | /**
10 | * YouJoin-Android
11 | * Created by ZQ on 2015/11/19.
12 | */
13 | public class StringUtilsTest extends AndroidTestCase {
14 |
15 | /**
16 | * 测试double转String
17 | */
18 | public void testDouble2String(){
19 | double test = 113.25666;
20 | String result = StringUtils.double2String(test, 3);
21 | assertEquals(result, "113.256");
22 | }
23 |
24 | /**
25 | * 测试Json字符串修复
26 | */
27 | public void testFixJsonString(){
28 | String jsonString = StringUtils.FixJsonString("123{ \"\":\"\" }");
29 | assertEquals(jsonString, "{ \"\":\"\" }");
30 | jsonString = StringUtils.FixJsonString("{ \"\":\"\" }123");
31 | assertEquals(jsonString, "{ \"\":\"\" }");
32 | jsonString = StringUtils.FixJsonString("123{ \"\":\"\" }456");
33 | assertEquals(jsonString, "{ \"\":\"\" }");
34 | }
35 |
36 |
37 | /**
38 | * 测试参数类型判断
39 | */
40 | public void testGetParamType(){
41 | assertEquals(StringUtils.getParamType("11111"), "1");
42 | assertEquals(StringUtils.getParamType("a123"), "2");
43 | assertEquals(StringUtils.getParamType("zzq@test.com"), "3");
44 | assertEquals(StringUtils.getParamType("1a23"), "invalid");
45 | }
46 |
47 | public void testGetPicUrlList(){
48 | String pics = "http://192.168.0.103:8088/youjoin-server/upload/16/20151207053324_lufei.jpg;http://192.168.0.103:8088/youjoin-server/upload/16/20151207053324_lufei.jpg;";
49 | List picList = StringUtils.getPicUrlList(pics);
50 | assertEquals(picList.size(), 2);
51 | assertEquals(picList.get(0), "http://192.168.0.103:8088/youjoin-server/upload/16/20151207053324_lufei.jpg");
52 | assertEquals(picList.get(1), "http://192.168.0.103:8088/youjoin-server/upload/16/20151207053324_lufei.jpg");
53 |
54 | pics = "http://192.168.0.103:8088/youjoin-server/upload/16/20151207053324_lufei.jpg";
55 | picList = StringUtils.getPicUrlList(pics);
56 | assertEquals(picList.size(), 1);
57 | assertEquals(picList.get(0), "http://192.168.0.103:8088/youjoin-server/upload/16/20151207053324_lufei.jpg");
58 |
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/background.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btBackDisabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btBackDisabled.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btBackDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btBackDown.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btBackNormal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btBackNormal.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btMoreDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btMoreDown.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btMoreNormal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btMoreNormal.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btPlayDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btPlayDown.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/btPlayNormal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/btPlayNormal.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/cell_grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/cell_grid.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/copyright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/copyright.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/ingameFrame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/ingameFrame.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/labelCongratulations.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/labelCongratulations.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/labelMixing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/labelMixing.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/labelSuper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/labelSuper.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/levelButtons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/levelButtons.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/levelLabels.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/levelLabels.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/loader-anim.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/loader-anim.gif
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/logo.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/logoRibbon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/logoRibbon.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/selectHeaderText.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/selectHeaderText.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/assets/separator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FreedomZZQ/YouJoin-Android/8fa6494a421f5ebd8f6659d6de04ffaf32c9d3e4/app/src/main/assets/pintu/assets/separator.png
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/demo.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 3D拼图
6 |
7 |
8 |
9 |
10 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
58 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/js/a.js:
--------------------------------------------------------------------------------
1 | function a_init() {
2 | updateShare(0);
3 | }
4 |
5 | function goHome() {
6 | window.location.href ='http://game.024qianzheng.cn';
7 | }
8 |
9 | function a_submitScore(score) {
10 | updateShareScore(score);
11 | setTimeout( function() { show_share(); }, 1500 )
12 | }
13 |
14 | function updateShare(bestScore) {
15 | imgUrl = 'http://game.024qianzheng.cn/3dcube/3dcubeicon.png';
16 | lineLink = 'http://game.024qianzheng.cn/3dcube/3dcube.htm';
17 | descContent = "这3D转啊转到我头晕!";
18 | updateShareScore(bestScore);
19 | appid = '';
20 | }
21 |
22 | function updateShareScore(bestScore) {
23 | if(bestScore > 0) {
24 | shareTitle = "我在《3D拼图》过了第" + bestScore + "关,这样子拼图好难啊!";
25 | }
26 | else{
27 | shareTitle = "另类拼图游戏《3D拼图》好难啊!";
28 | }
29 | }
--------------------------------------------------------------------------------
/app/src/main/assets/pintu/js/store2.js:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2010-2012 Marcus Westin */
2 | (function(){function g(){try{return d in b&&b[d]}catch(a){return!1}}var a={},b=window,c=b.document,d="localStorage",e="__storejs__",f;a.disabled=!1,a.set=function(a,b){},a.get=function(a){},a.remove=function(a){},a.clear=function(){},a.transact=function(b,c,d){var e=a.get(b);d==null&&(d=c,c=null),typeof e=="undefined"&&(e=c||{}),d(e),a.set(b,e)},a.getAll=function(){},a.serialize=function(a){return JSON.stringify(a)},a.deserialize=function(a){if(typeof a!="string")return undefined;try{return JSON.parse(a)}catch(b){return a||undefined}};if(g())f=b[d],a.set=function(b,c){return c===undefined?a.remove(b):(f.setItem(b,a.serialize(c)),c)},a.get=function(b){return a.deserialize(f.getItem(b))},a.remove=function(a){f.removeItem(a)},a.clear=function(){f.clear()},a.getAll=function(){var b={};for(var c=0;cdocument.w=window