Compare commits

..

36 Commits

Author SHA1 Message Date
wushaocheng
2bba51a7ea [Modify]修改google,facebook的登录配置 2023-03-20 17:13:09 +08:00
wushaocheng
61d01b96c7 [Modify]修改google配置 2023-03-17 21:28:20 +08:00
wushaocheng
4a471bf2d1 [Modify]修改google配置 2023-03-17 19:34:23 +08:00
wushaocheng
e528a65d8c [Modify]修改google配置 2023-03-17 18:57:33 +08:00
wushaocheng
5692744044 [Modify]修改google配置 2023-03-17 18:56:00 +08:00
邱福灿
a1d2159c3a update google-service.json 2023-03-17 04:05:41 +08:00
wushaocheng
8d377f9f19 [Modify]修改google密钥 2023-03-17 02:24:10 +08:00
wushaocheng
8bc6269794 [Modify]修改项目配置和将加密模式修改为So库 2023-03-17 01:06:27 +08:00
wushaocheng
8fe566a240 [BugFix]修改firebase配置 2023-03-16 19:29:11 +08:00
wushaocheng
b9d0c289d2 [BugFix]修改网络安全配置 2023-03-16 18:12:13 +08:00
wushaocheng
dc4f4849ff [BugFix]修改网络安全配置 2023-03-16 18:02:17 +08:00
wushaocheng
792fb3b428 [BugFix]上传1.5.8版本 2023-03-16 17:32:10 +08:00
wushaocheng
f2a426fa2b [BugFix]修复压缩路径遍历和谷歌支付问题 2023-03-16 17:06:51 +08:00
wushaocheng
ead01644f3 [BugFix]修复房间显示cp匹配内容 2023-03-16 16:21:30 +08:00
wushaocheng
896b615946 [BugFix]修改ShareSDK和Facebook 2023-03-16 15:50:35 +08:00
wushaocheng
9714582690 [BugFix]修改Google地址 2023-03-16 15:48:15 +08:00
wushaocheng
6476d6a114 [BugFix]调整代码逻辑 2023-03-16 15:43:42 +08:00
wushaocheng
24665aba7f [BugFix]修复不安全的压缩路径遍历 2023-03-16 11:12:30 +08:00
wushaocheng
a4ed27e532 [Modify]修改项目配置 2023-03-15 21:01:41 +08:00
wushaocheng
cd2041be19 [Modify]修改appsflyer版本 2023-03-15 17:19:45 +08:00
wushaocheng
443041d73d [Modify]修改版本号为1.5.5 2023-03-15 17:12:27 +08:00
wushaocheng
4a56d1a59c [Modify]修改版本号为1.5.5 2023-03-15 15:26:56 +08:00
wushaocheng
449dd0f8b1 [Modify]移除游戏房提示繁体字 2023-03-15 14:53:00 +08:00
wushaocheng
2cf1c6d178 [Modify]移除游戏房 2023-03-15 11:37:25 +08:00
wushaocheng
664d67f44c [Modify]修改peko的配置 2023-03-14 17:52:18 +08:00
wushaocheng
c7665be597 [Modify]修改peko的配置 2023-03-14 17:27:31 +08:00
wushaocheng
8e7b6880c3 [Modify]移除友盟统计 2023-03-14 15:20:06 +08:00
wushaocheng
453a5a78a3 [Modify]混淆修改 2023-03-10 20:20:50 +08:00
wushaocheng
fb4d0319dd [Modify]修改项目中可能违规的地方 2023-03-10 19:07:12 +08:00
wushaocheng
b9ff574fa8 [Modify]混淆修改 2023-03-10 11:15:43 +08:00
wushaocheng
7ce2108b1e [Modify]移除动态详情页分享按钮 2023-03-09 16:45:16 +08:00
wushaocheng
696473d412 [Modify]谷歌下架原因排查 2023-03-09 16:10:26 +08:00
wushaocheng
8542e3381c [Modify]谷歌下架原因排查 2023-03-09 14:09:57 +08:00
wushaocheng
cae2b1ab2d [Modify]谷歌下架原因排查 2023-03-09 12:18:04 +08:00
wushaocheng
6b90f73031 [Modify]移除zego 2023-03-08 17:55:18 +08:00
wushaocheng
6ea2ade4ff [Modify]移除zego 2023-03-08 17:54:52 +08:00
7148 changed files with 80884 additions and 105755 deletions

View File

@@ -0,0 +1,34 @@
apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
android {
compileSdkVersion COMPILE_SDK_VERSION.toInteger()
defaultConfig {
minSdkVersion MIN_SDK_VERSION.toInteger()
targetSdkVersion TARGET_SDK_VERSION.toInteger()
testApplicationId 'com.soundcloud.android.crop.test'
testInstrumentationRunner 'android.test.InstrumentationTestRunner'
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion = '30.0.3'
}
dependencies {
api 'androidx.annotation:annotation:1.4.0'
api 'androidx.legacy:legacy-support-v4:1.0.0'
implementation "androidx.core:core-ktx:1.7.0"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}
repositories {
mavenCentral()
}

View File

@@ -0,0 +1 @@
<manifest package="com.soundcloud.android.crop" />

View File

@@ -1,4 +1,4 @@
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.annotation.TargetApi;
import android.app.Activity;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.annotation.TargetApi;
import android.content.Intent;

View File

@@ -1,4 +1,4 @@
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.content.Context;
import android.graphics.Canvas;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.app.ProgressDialog;
import android.content.ContentResolver;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.annotation.SuppressLint;
import android.content.Context;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.content.Context;
import android.graphics.Bitmap;

View File

@@ -1,4 +1,4 @@
package com.soundcloud.crop;
package com.soundcloud.android.crop;
class Log {

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.app.Activity;
import android.os.Bundle;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.soundcloud.crop;
package com.soundcloud.android.crop;
import android.graphics.Bitmap;
import android.graphics.Matrix;

View File

@@ -0,0 +1,48 @@
package com.soundcloud.android.crop;
import android.content.Context;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.text.TextUtils;
import android.util.Log;
import java.io.File;
public class UriUtil {
public final static String getFileProviderName(Context context){
return context.getPackageName()+".fileprovider";
}
/**
* 将TakePhoto 提供的Uri 解析出文件绝对路径
*
* @param uri
* @return
*/
public static String parseOwnUri(Context context, Uri uri) {
if (uri == null) return null;
String path;
if (TextUtils.equals(uri.getAuthority(), getFileProviderName(context))) {
String target_text_camera_photos = "camera_photos/";
if (uri.getPath() != null && uri.getPath().contains(target_text_camera_photos)) {
path = new File(uri.getPath().replace(target_text_camera_photos, ""))
.getAbsolutePath();
} else {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
path = new File(Environment.getExternalStorageDirectory(),
uri.getPath())
.getAbsolutePath();
} else {
path = uri.getPath();
}
}
} else {
path = uri.getPath();
}
return path;
}
}

View File

Before

Width:  |  Height:  |  Size: 76 B

After

Width:  |  Height:  |  Size: 76 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 76 B

After

Width:  |  Height:  |  Size: 76 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 83 B

After

Width:  |  Height:  |  Size: 83 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

View File

@@ -9,7 +9,7 @@
android:id="@+id/done_cancel_bar"
layout="@layout/crop__layout_done_cancel" />
<com.soundcloud.crop.CropImageView
<com.soundcloud.android.crop.CropImageView
android:id="@+id/crop_image"
android:layout_width="match_parent"
android:layout_height="match_parent"

View File

@@ -1,40 +1,38 @@
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.tencent.vasdolly'
apply from: '../project.gradle'
apply from: '../mob.gradle'
apply plugin: "com.bytedance.android.aabResGuard"
apply plugin: "xml-class-guard"
def onlyArm64 = Boolean.parseBoolean(only_arm64)
android {
compileSdkVersion COMPILE_SDK_VERSION.toInteger()
defaultConfig {
applicationId isolationMode ? 'com.example.gogo' : 'app.hiyoo.fun'
applicationId "com.vele.pekolive"
minSdkVersion MIN_SDK_VERSION.toInteger()
targetSdkVersion TARGET_SDK_VERSION.toInteger()
versionCode Integer.valueOf(version_code)
versionName version_name
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
multiDexEnabled true
ndk {
//设置支持的SO库架构
if (onlyArm64) {
abiFilters "arm64-v8a"
} else {
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
flavorDimensions 'default'
buildConfigField "boolean", "ISOLATION_MODE", "$isolationMode"
if (isolationMode) {
resValue "string", "app_name", "Hi-debug"
} else {
resValue "string", "app_name", "Hiyoo"
}
}
splits {
abi {
enable true
reset()
include 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
universalApk true
}
manifestPlaceholders = [CRASHLYTICS_COLLECTION_ENABLED: CRASHLYTICS_COLLECTION_ENABLED.toBoolean()]
}
bundle {
@@ -50,29 +48,20 @@ android {
}
//在apk文件后边生成版本号信息
android.applicationVariants.configureEach { variant ->
variant.outputs.configureEach { output ->
def date = new Date().format("MMddHHmm", TimeZone.getTimeZone("GMT+08"))
def outputFile = output.outputFile
if (outputFile == null || !outputFile.name.endsWith('.apk')) {
return
android.applicationVariants.all {
variant ->
variant.outputs.all {
def date = new Date().format("MMddHHmm", TimeZone.getTimeZone("GMT+08"))
outputFileName = "peko_${buildType.name}_v${defaultConfig.versionName}-${date}.apk"
}
def abi = output.getFilter(com.android.build.OutputFile.ABI)
if (abi == null) {
abi = "universal"
}
outputFileName = "hiyoo_${buildType.name}_v${defaultConfig.versionName}_${abi}_${date}.apk"
}
}
lint {
lintOptions {
abortOnError false
disable 'MissingTranslation', 'ExtraTranslation', 'ContentDescription', 'SmallSp'
disable 'MissingTranslation'
disable 'ExtraTranslation'
}
dataBinding {
enabled = true
}
@@ -83,23 +72,24 @@ android {
signingConfigs {
debug {
storeFile file('../app_debug.jks')
storePassword "debug2023"
keyAlias "debug"
keyPassword "debug2023"
v2 {
storeFile file('../pekolive.jks')
storePassword "peko2023"
keyAlias "pekolive"
keyPassword "peko2023"
v2SigningEnabled true
v1SigningEnabled true
}
release {
storeFile file('../hiyoo.jks')
storePassword "hiyoo2023"
keyAlias "hiyoo"
keyPassword "hiyoo2023"
v2SigningEnabled true
v1 {
storeFile file('../pekolive.jks')
storePassword "peko2023"
keyAlias "pekolive"
keyPassword "peko2023"
v2SigningEnabled false
v1SigningEnabled true
}
}
sourceSets {
@@ -149,23 +139,19 @@ android {
}
buildTypes {
def server_url_debug = '"http://beta.api.hiyoo.fun/"'
def server_url_release = '"https://api.hiyoo.fun/"'
debug {
println("minifyEnabled = " + minify_enabled)
ext.enableCrashlytics = false
ext.alwaysUpdateBuildId = false // Firebase Crashlytics禁用更新构建ID
// ext.enableCrashlytics = false
// ext.alwaysUpdateBuildId = false // Firebase Crashlytics禁用更新构建ID
buildConfigField "String", "BASE_URL", server_url_debug
buildConfigField "String", "BASE_URL", "\"https://beta.api.pekolive.com/\""
buildConfigField "String", "BASE_URL_DEBUG", "BASE_URL"
buildConfigField "String", "BASE_URL_STAGING", "BASE_URL"
buildConfigField "String", "BASE_URL_RELEASE", server_url_release
minifyEnabled minify_enabled.toBoolean() // 是否混淆
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
buildConfigField "String", "BASE_URL_RELEASE", "BASE_URL"
minifyEnabled false // 是否混淆
crunchPngs false // 停用 PNG 压缩
signingConfig isolationMode ? signingConfigs.debug : signingConfigs.release
signingConfig signingConfigs.v2
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
gradle.taskGraph.whenReady {
tasks.each { task ->
if (task.name.contains("Test") || task.name.contains("Lint")) {
@@ -178,12 +164,12 @@ android {
release {
ext.enableCrashlytics = CRASHLYTICS_COLLECTION_ENABLED.toBoolean()
ext.alwaysUpdateBuildId = CRASHLYTICS_COLLECTION_ENABLED.toBoolean()
// firebaseCrashlytics {
// //Firebase Crashlytics控制上传混淆文件开关
// mappingFileUploadEnabled CRASHLYTICS_COLLECTION_ENABLED.toBoolean()
// }
firebaseCrashlytics {
//Firebase Crashlytics控制上传混淆文件开关
mappingFileUploadEnabled CRASHLYTICS_COLLECTION_ENABLED.toBoolean()
}
buildConfigField "String", "BASE_URL", server_url_release
buildConfigField "String", "BASE_URL", "\"https://api.pekolive.com/\""
buildConfigField "String", "BASE_URL_DEBUG", "BASE_URL"
buildConfigField "String", "BASE_URL_STAGING", "BASE_URL"
buildConfigField "String", "BASE_URL_RELEASE", "BASE_URL"
@@ -191,7 +177,7 @@ android {
shrinkResources true // 开了混淆的时候才能开启 是否去除无效的资源文件
zipAlignEnabled true // 开了混淆的时候才能开启 是否进行压缩并重排列
crunchPngs true // 启用 PNG 压缩
signingConfig isolationMode ? signingConfigs.debug : signingConfigs.release
signingConfig signingConfigs.v2
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
@@ -214,8 +200,11 @@ def Lombok = "1.18.24"
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
implementation fileTree(dir: 'aliyun-libs', include: ['*.jar', '*.aar'])
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.6.2'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2'
implementation 'androidx.appcompat:appcompat:1.4.2'
implementation 'com.google.android.material:material:1.6.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
api 'androidx.multidex:multidex:2.0.1'
@@ -235,8 +224,9 @@ dependencies {
api "com.github.zyyoona7:EasyPopup:1.0.2"
api "com.github.donkingliang:LabelsView:1.6.5"
api "com.github.yyued:SVGAPlayer-Android:2.6.1"
implementation "com.orhanobut:logger:2.2.0"
api "com.ms-square:expandableTextView:0.1.4"
annotationProcessor 'androidx.annotation:annotation:1.6.0'
annotationProcessor 'androidx.annotation:annotation:1.4.0'
implementation 'io.github.h07000223:flycoTabLayout:3.0.0'
@@ -257,7 +247,7 @@ dependencies {
//数字滚动效果
implementation 'com.github.YvesCheung:RollingText:1.2.3'
// 引入原有第三方裁图源码,方便修改
api project(':libs:lib_crop')
api project(':android_crop_lib')
//rx权限请求框架
implementation('com.github.tbruyelle:rxpermissions:0.10.2') {
@@ -270,25 +260,25 @@ dependencies {
implementation 'com.github.fodroid:XRadioGroup:v1.5'
api 'com.tencent.vasdolly:helper:3.0.6'
api 'com.tencent.vasdolly:helper:3.0.3'
implementation "io.github.tencent:vap:2.0.24"
implementation 'com.github.mmin18:realtimeblurview:1.2.1'
// implementation 'com.appsflyer:af-android-sdk:6.8.2'
implementation 'com.appsflyer:af-android-sdk:6.8.2'
implementation 'com.github.zhpanvip:BannerViewPager:3.5.6'
//fireBase
// implementation platform('com.google.firebase:firebase-bom:31.1.1')
// implementation 'com.google.firebase:firebase-crashlytics-ktx'
// implementation 'com.google.firebase:firebase-analytics-ktx'
implementation platform('com.google.firebase:firebase-bom:31.1.1')
implementation 'com.google.firebase:firebase-crashlytics-ktx'
implementation 'com.google.firebase:firebase-analytics-ktx'
//Adjust接入
// implementation 'com.adjust.sdk:adjust-android:4.33.0'
// implementation 'com.android.installreferrer:installreferrer:2.2'
implementation 'com.adjust.sdk:adjust-android:4.33.0'
implementation 'com.android.installreferrer:installreferrer:2.2'
// Add the following if you are using the Adjust SDK inside web views on your app
// implementation 'com.adjust.sdk:adjust-android-webbridge:4.33.0'
implementation 'com.adjust.sdk:adjust-android-webbridge:4.33.0'
implementation 'com.github.yalantis:ucrop:2.2.7'
@@ -297,19 +287,14 @@ dependencies {
//wheelView
implementation 'com.contrarywind:wheelview:4.1.0'
// implementation 'tech.sud.mgp:SudMGP-static:1.3.3.1158'
implementation project(':modules:module_base')
if (!isolationMode && file("../modules/module_google/build.gradle").exists()) {
implementation project(':modules:module_google')
}
}
channel {
//多渠道包的输出目录默认为new File(project.buildDir,"channel")
outputDir = new File(project.buildDir, "channelapk")
//多渠道包的命名规则,默认为:${appName}-${versionName}-${versionCode}-${flavorName}-${buildType}-${buildTime}
apkNameFormat = 'hiyoo-${buildType}-${flavorName}-v${versionName}-${buildTime}'
def only64 = onlyArm64 ? "-only64" : ""
apkNameFormat = 'peko-${buildType}only64-${flavorName}-v${versionName}-${buildTime}'.replace("only64", only64)
//快速模式生成渠道包时不进行校验速度可以提升10倍以上默认为false
fastMode = false
//buildTime的时间格式默认格式yyyyMMdd-HHmmss
@@ -317,31 +302,3 @@ channel {
//低内存模式仅针对V2签名默认为false只把签名块、中央目录和EOCD读取到内存不把最大头的内容块读取到内存在手机上合成APK时可以使用该模式
lowMemory = false
}
aabResGuard {
mappingFile = file("aab-res-guard-mapping.txt").toPath() // Mapping file used for incremental obfuscation
whiteList = [ // White list rules
"*.R.raw.*",
"*.R.drawable.icon"
]
obfuscatedBundleFileName = "duplicated-app.aab" // Obfuscated file name, must end with '.aab'
mergeDuplicatedRes = true // Whether to allow the merge of duplicate resources
enableFilterFiles = false // Whether to allow filter files
filterList = [ // file filter rules
// "*/arm64-v8a/*",
// "META-INF/*"
]
enableFilterStrings = false // switch of filter strings
unusedStringPath = file("unused.txt").toPath() // strings will be filtered in this file
languageWhiteList = ["en", "zh"] // keep en,en-xx,zh,zh-xx etc. remove others.
}
//以下均为非必须
xmlClassGuard {
findAabConstraintReferencedIds = true
//用于增量混淆的 mapping 文件
mappingFile = file("xml-class-mapping.txt")
//更改manifest文件的package属性即包名
packageChange = ["com.chwl.app": "co.ch.a"]
}

39
app/google-services.json Normal file
View File

@@ -0,0 +1,39 @@
{
"project_info": {
"project_number": "656602722869",
"project_id": "pekolive-30f9e",
"storage_bucket": "pekolive-30f9e.appspot.com"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:656602722869:android:dac206f8aae0ba9021f77c",
"android_client_info": {
"package_name": "com.vele.pekolive"
}
},
"oauth_client": [
{
"client_id": "656602722869-sss2inirem512et0015kdqjp39mqgn96.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyDDoTSpY3wxOefVDVKRmE9cDiT1iv8Ra-4"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "656602722869-sss2inirem512et0015kdqjp39mqgn96.apps.googleusercontent.com",
"client_type": 3
}
]
}
}
}
],
"configuration_version": "1"
}

Binary file not shown.

Binary file not shown.

View File

@@ -99,32 +99,35 @@
-keep class android.support.v7.** { *;}
#----------------EventBus事件巴士-----------------
-keepattributes *Annotation*
-keepclassmembers class * {
-keepclassmembers class ** {
@org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }
# If using AsyncExecutord, keep required constructor of default event used.
# Adjust the class name if a custom failure event type is used.
-keepclassmembers class org.greenrobot.eventbus.util.ThrowableFailureEvent {
<init>(java.lang.Throwable);
# Only required if you use AsyncExecutor
-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
<init>(Java.lang.Throwable);
}
# Accessed via reflection, avoid renaming or removal
-keep class org.greenrobot.eventbus.android.AndroidComponentsImpl
#-------------云信相关的混淆配置------------
-dontwarn com.netease.**
-keep class com.netease.** {*;}
# Presenter 相关
-keep class com.yizhuan.erban.base.** { *; }
-keep public class * extends com.yizhuan.erban.base.BaseMvpPresenter
-keep public class * extends com.yizhuan.xchat_android_library.base.factory.AbstractMvpPresenter
# 云信自定义 ViewHolder 配置
-dontwarn com.chwl.app.ui.im.recent.holder.**
-keep class com.chwl.app.ui.im.recent.holder.** {*;}
-keep class com.chwl.app.ui.im.chat.** {*;}
-keep class com.chwl.app.luckymoney.viewholder.** {*;}
-keep class com.chwl.app.share.viewholder.** {*;}
-keep class com.chwl.app.public_chat_hall.msg.viewholder.** {*;}
-keep class com.chwl.app.module_hall.im.msgholder.** {*;}
-keep class com.chwl.app.mentoring_relationship.viewholder.** {*;}
-dontwarn com.yizhuan.erban.ui.im.recent.holder.**
-keep class com.yizhuan.erban.ui.im.recent.holder.** {*;}
-keep class com.yizhuan.erban.ui.im.chat.** {*;}
-keep class com.yizhuan.erban.luckymoney.viewholder.** {*;}
-keep class com.yizhuan.erban.share.viewholder.** {*;}
-keep class com.yizhuan.erban.public_chat_hall.msg.viewholder.** {*;}
-keep class com.yizhuan.erban.module_hall.im.msgholder.** {*;}
-keep class com.yizhuan.tutu.mentoring_relationship.viewholder.** {*;}
-keep public class * extends com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder {*;}
-keep public class * extends com.netease.nim.uikit.business.session.viewholder.MsgViewHolderBase {*;}
@@ -172,8 +175,8 @@
-keep class com.darsh.multipleimageselect.** { *; }
-dontwarn com.darsh.multipleimageselect.**
-keep class com.soundcloud.crop.** { *; }
-dontwarn com.soundcloud.crop.**
-keep class com.soundcloud.android.crop.** { *; }
-dontwarn com.soundcloud.android.crop.**
# glide4.0
-keep public class * implements com.bumptech.glide.module.GlideModule
@@ -185,11 +188,6 @@
# for DexGuard only
#-keepresourcexmlelements manifest/application/meta-data@value=GlideModule
# Presenter 相关
-keep class com.chwl.app.base.** { *; }
-keep public class * extends com.chwl.app.base.BaseMvpPresenter
-keep public class * extends com.chwl.library.base.factory.AbstractMvpPresenter
# BaseAdapter
-keep class com.chad.library.adapter.** {
*;
@@ -201,8 +199,8 @@
<init>(...);
}
-dontwarn com.chwl.app.bindadapter.**
-keep class com.chwl.app.bindadapter.** {*;}
-dontwarn com.yizhuan.erban.bindadapter.**
-keep class com.yizhuan.erban.bindadapter.** {*;}
# Ping++ 混淆过滤
-dontwarn com.pingplusplus.**
@@ -233,9 +231,9 @@
# TODO 网络加载 一些业务bean gson 时候混淆问题
-keep class org.json.** {*;}
-keep class com.chwl.**.bean.** {*;}
-keep class com.chwl.**.result.** {*;}
-keep class com.chwl.**.entity.** {*;}
-dontwarn com.yizhuan.xchat_android_core.**
-keep class com.yizhuan.xchat_android_core.** {*;}
#百度统计
-keep class com.baidu.bottom.** { *; }
@@ -308,8 +306,8 @@
-keep class com.autonavi.aps.amapapi.model.**{*;}
#暂时keep这个View排查华为oom问题
-keep class com.chwl.app.avroom.widget.MicroView{*;}
-keep class com.chwl.app.ui.widget.rollviewpager.RollPagerView{*;}
-keep class com.yizhuan.erban.avroom.widget.MicroView{*;}
-keep class com.yizhuan.erban.ui.widget.rollviewpager.RollPagerView{*;}
#linkedMe
-keep class com.microquation.linkedme.android.** { *; }
@@ -367,7 +365,7 @@
-dontwarn com.meizu.cloud.**
-keep class com.meizu.cloud.** {*;}
-keep class com.chwl.app.ui.widget.AppBarLayoutBehavior {*;}
-keep class com.yizhuan.erban.ui.widget.AppBarLayoutBehavior {*;}
#ViewBinding使用的反射生成的对应Binding
-keepclassmembers class * implements androidx.viewbinding.ViewBinding {
@@ -452,7 +450,7 @@
}
## EasyPhotos
-keep class com.chwl.library.easyphoto.models.** { *; }
-keep class com.yizhuan.xchat_android_library.easyphoto.models.** { *; }
## 图片裁剪UCrop
-dontwarn com.yalantis.ucrop.**
@@ -477,8 +475,4 @@
}
-keep public class com.android.installreferrer.**{ *; }
-keep public class * extends java.lang.Exception
-keep public class com.alibaba.android.arouter.routes.**{*;}
-keep public class com.alibaba.android.arouter.facade.**{*;}
-keep class * implements com.alibaba.android.arouter.facade.template.ISyringe{*;}
-keep public class * extends java.lang.Exception

View File

@@ -0,0 +1,28 @@
package com.yizhuan.erban;
import static org.junit.Assert.assertEquals;
import android.content.Context;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.platform.app.InstrumentationRegistry;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("com.yizhuan.erban_android_client", appContext.getPackageName());
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 683 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 254 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 492 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 666 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 526 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 550 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 472 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 552 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 518 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 412 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 600 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 732 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 916 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 690 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 520 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 569 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 456 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 534 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Some files were not shown because too many files have changed in this diff Show More