diff --git a/.gitignore b/.gitignore
index 502c314..e307fbe 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,20 +1,11 @@
*.iml
.gradle
-/local.properties
+local.properties
.DS_Store
-/build
-/captures
+build
+captures
.externalNativeBuild
.idea
-.gradle/
-.idea/
-.git/
-.DS_Store
-gradlew.bat
-import-summary.txt
-local.properties
+.git
*.iml
-build/
-captures/
-config.xml
diff --git a/README.md b/README.md
index fe64e05..a865fe2 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
### 【友盟+】统计、推送、分享三合一组件化SDK集成Demo
+重要更新:增加用户授权隐私协议友盟sdk初始化逻辑,具体请查看SplashTestActivity
+
本项目仅提供离线包依赖方式集成示例。
如果您是采用maven库在线依赖相关友盟SDK,请参考[如下Demo工程](https://github.com/umeng/MultiFunctionAndroidMavenDemo-master)。
diff --git a/UMLibrary/.gitignore b/UMLibrary/.gitignore
new file mode 100644
index 0000000..796b96d
--- /dev/null
+++ b/UMLibrary/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/UMLibrary/AndroidManifest.xml b/UMLibrary/AndroidManifest.xml
deleted file mode 100644
index b727b54..0000000
--- a/UMLibrary/AndroidManifest.xml
+++ /dev/null
@@ -1,167 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/UMLibrary/build.gradle b/UMLibrary/build.gradle
index 47b7408..b9d48f5 100644
--- a/UMLibrary/build.gradle
+++ b/UMLibrary/build.gradle
@@ -1,34 +1,55 @@
apply plugin: 'com.android.library'
+ArrayList getShareDir(String name) {
+ ArrayList tmp = new ArrayList()
+ File[] files = (new File(rootDir, "share")).listFiles()
+ if (files != null) {
+ tmp.addAll(files)
+ }
+ ArrayList dirs = new ArrayList()
+ while (tmp.size() > 0) {
+ File file = tmp.remove(0)
+ if (file.isDirectory() && name == file.getName()) {
+ dirs.add(file.getPath())
+ } else if (file.isDirectory()) {
+ files = file.listFiles()
+ if (files != null) {
+ tmp.addAll(files)
+ }
+ }
+ }
+ return dirs
+}
+
android {
- compileSdkVersion 30
+ compileSdkVersion 34
defaultConfig {
minSdkVersion 14
targetSdkVersion 30
+
+ sourceSets {
+ main {
+ ArrayList resSrcList = getShareDir("res")
+ resSrcList.add("src/main/res")
+ res.srcDirs = resSrcList
+ }
+ }
}
+
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
-
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- resources.srcDirs = ['src']
- aidl.srcDirs = ['src']
- renderscript.srcDirs = ['src']
- res.srcDirs = ['res']
- assets.srcDirs = ['assets']
- jniLibs.srcDirs = ['libs']
- }
- }
}
dependencies {
- api fileTree(dir: 'libs', include: ['*.jar'])
+ api fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
+ ArrayList share = getShareDir("libs")
+ for (String item : share) {
+ api fileTree(dir: "${item}", include: ['*.jar', '*.aar'])
+ }
}
diff --git a/UMLibrary/libs/SecurityEnvSDK-release-1.1.0.jar b/UMLibrary/libs/SecurityEnvSDK-release-1.1.0.jar
deleted file mode 100644
index 2b80819..0000000
Binary files a/UMLibrary/libs/SecurityEnvSDK-release-1.1.0.jar and /dev/null differ
diff --git a/UMLibrary/libs/SocialSDK_laiwang_1.jar b/UMLibrary/libs/SocialSDK_laiwang_1.jar
deleted file mode 100644
index 0de8d25..0000000
Binary files a/UMLibrary/libs/SocialSDK_laiwang_1.jar and /dev/null differ
diff --git a/UMLibrary/libs/agoo-accs-3.4.2.7.jar b/UMLibrary/libs/agoo-accs-3.4.2.7.jar
deleted file mode 100644
index 72bc96e..0000000
Binary files a/UMLibrary/libs/agoo-accs-3.4.2.7.jar and /dev/null differ
diff --git a/UMLibrary/libs/agoo_aranger-1.0.6.jar b/UMLibrary/libs/agoo_aranger-1.0.6.jar
deleted file mode 100644
index 161dd58..0000000
Binary files a/UMLibrary/libs/agoo_aranger-1.0.6.jar and /dev/null differ
diff --git a/UMLibrary/libs/agoo_networksdk-3.5.8.jar b/UMLibrary/libs/agoo_networksdk-3.5.8.jar
deleted file mode 100644
index 439b643..0000000
Binary files a/UMLibrary/libs/agoo_networksdk-3.5.8.jar and /dev/null differ
diff --git a/UMLibrary/libs/agoo_tnet4android-3.1.14.10.jar b/UMLibrary/libs/agoo_tnet4android-3.1.14.10.jar
deleted file mode 100644
index 08fdc34..0000000
Binary files a/UMLibrary/libs/agoo_tnet4android-3.1.14.10.jar and /dev/null differ
diff --git a/UMLibrary/libs/alicloud-utils-2.0.0.jar b/UMLibrary/libs/alicloud-utils-2.0.0.jar
deleted file mode 100644
index 176183a..0000000
Binary files a/UMLibrary/libs/alicloud-utils-2.0.0.jar and /dev/null differ
diff --git a/UMLibrary/libs/android-support-v4.jar b/UMLibrary/libs/android-support-v4.jar
deleted file mode 100755
index 2ff47f4..0000000
Binary files a/UMLibrary/libs/android-support-v4.jar and /dev/null differ
diff --git a/UMLibrary/libs/arm64-v8a/libcocklogic-1.1.3.so b/UMLibrary/libs/arm64-v8a/libcocklogic-1.1.3.so
deleted file mode 100755
index 2f58430..0000000
Binary files a/UMLibrary/libs/arm64-v8a/libcocklogic-1.1.3.so and /dev/null differ
diff --git a/UMLibrary/libs/arm64-v8a/libtnet-3.1.14.so b/UMLibrary/libs/arm64-v8a/libtnet-3.1.14.so
deleted file mode 100644
index 1ce75ae..0000000
Binary files a/UMLibrary/libs/arm64-v8a/libtnet-3.1.14.so and /dev/null differ
diff --git a/UMLibrary/libs/armeabi-v7a/libcocklogic-1.1.3.so b/UMLibrary/libs/armeabi-v7a/libcocklogic-1.1.3.so
deleted file mode 100755
index 8b22f71..0000000
Binary files a/UMLibrary/libs/armeabi-v7a/libcocklogic-1.1.3.so and /dev/null differ
diff --git a/UMLibrary/libs/armeabi-v7a/libtnet-3.1.14.so b/UMLibrary/libs/armeabi-v7a/libtnet-3.1.14.so
deleted file mode 100644
index 73044aa..0000000
Binary files a/UMLibrary/libs/armeabi-v7a/libtnet-3.1.14.so and /dev/null differ
diff --git a/UMLibrary/libs/armeabi/libcocklogic-1.1.3.so b/UMLibrary/libs/armeabi/libcocklogic-1.1.3.so
deleted file mode 100755
index 0f5fdf7..0000000
Binary files a/UMLibrary/libs/armeabi/libcocklogic-1.1.3.so and /dev/null differ
diff --git a/UMLibrary/libs/armeabi/libtnet-3.1.14.so b/UMLibrary/libs/armeabi/libtnet-3.1.14.so
deleted file mode 100644
index bb1824e..0000000
Binary files a/UMLibrary/libs/armeabi/libtnet-3.1.14.so and /dev/null differ
diff --git a/UMLibrary/libs/libddshare.jar b/UMLibrary/libs/libddshare.jar
deleted file mode 100644
index 55481af..0000000
Binary files a/UMLibrary/libs/libddshare.jar and /dev/null differ
diff --git a/UMLibrary/libs/libwwsdk.jar b/UMLibrary/libs/libwwsdk.jar
deleted file mode 100644
index 7380272..0000000
Binary files a/UMLibrary/libs/libwwsdk.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-agoo-accs-3.4.2.7.12.jar b/UMLibrary/libs/umeng-agoo-accs-3.4.2.7.12.jar
new file mode 100644
index 0000000..eb75695
Binary files /dev/null and b/UMLibrary/libs/umeng-agoo-accs-3.4.2.7.12.jar differ
diff --git a/UMLibrary/libs/umeng-agoo_networksdk-3.5.8.10.jar b/UMLibrary/libs/umeng-agoo_networksdk-3.5.8.10.jar
new file mode 100644
index 0000000..fc345bd
Binary files /dev/null and b/UMLibrary/libs/umeng-agoo_networksdk-3.5.8.10.jar differ
diff --git a/UMLibrary/libs/umeng-agoo_tnet4android-3.1.14.10.2.aar b/UMLibrary/libs/umeng-agoo_tnet4android-3.1.14.10.2.aar
new file mode 100644
index 0000000..8b56f70
Binary files /dev/null and b/UMLibrary/libs/umeng-agoo_tnet4android-3.1.14.10.2.aar differ
diff --git a/UMLibrary/libs/alicloud-httpdns-1.3.2.3.jar b/UMLibrary/libs/umeng-alicloud-httpdns-1.3.2.3.1.jar
similarity index 59%
rename from UMLibrary/libs/alicloud-httpdns-1.3.2.3.jar
rename to UMLibrary/libs/umeng-alicloud-httpdns-1.3.2.3.1.jar
index e2fe5b9..0d00aa3 100644
Binary files a/UMLibrary/libs/alicloud-httpdns-1.3.2.3.jar and b/UMLibrary/libs/umeng-alicloud-httpdns-1.3.2.3.1.jar differ
diff --git a/UMLibrary/libs/umeng-alicloud-utils-2.0.0.1.jar b/UMLibrary/libs/umeng-alicloud-utils-2.0.0.1.jar
new file mode 100644
index 0000000..4128736
Binary files /dev/null and b/UMLibrary/libs/umeng-alicloud-utils-2.0.0.1.jar differ
diff --git a/UMLibrary/libs/alicloud_beacon-1.0.5.jar b/UMLibrary/libs/umeng-alicloud_beacon-1.0.5.jar
similarity index 100%
rename from UMLibrary/libs/alicloud_beacon-1.0.5.jar
rename to UMLibrary/libs/umeng-alicloud_beacon-1.0.5.jar
diff --git a/UMLibrary/libs/umeng-common-9.3.8.jar b/UMLibrary/libs/umeng-common-9.3.8.jar
deleted file mode 100644
index 31f3244..0000000
Binary files a/UMLibrary/libs/umeng-common-9.3.8.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-common-9.8.8.aar b/UMLibrary/libs/umeng-common-9.8.8.aar
new file mode 100644
index 0000000..7f372b5
Binary files /dev/null and b/UMLibrary/libs/umeng-common-9.8.8.aar differ
diff --git a/UMLibrary/libs/umeng-push-6.3.3.jar b/UMLibrary/libs/umeng-push-6.3.3.jar
deleted file mode 100644
index 9c9d329..0000000
Binary files a/UMLibrary/libs/umeng-push-6.3.3.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-push-6.7.2.aar b/UMLibrary/libs/umeng-push-6.7.2.aar
new file mode 100644
index 0000000..4916965
Binary files /dev/null and b/UMLibrary/libs/umeng-push-6.7.2.aar differ
diff --git a/UMLibrary/libs/umeng-share-Ding-7.1.4.jar b/UMLibrary/libs/umeng-share-Ding-7.1.4.jar
deleted file mode 100644
index f6b82b2..0000000
Binary files a/UMLibrary/libs/umeng-share-Ding-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-QQ-full-7.1.4.jar b/UMLibrary/libs/umeng-share-QQ-full-7.1.4.jar
deleted file mode 100644
index 7f52825..0000000
Binary files a/UMLibrary/libs/umeng-share-QQ-full-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-alipay-7.1.4.jar b/UMLibrary/libs/umeng-share-alipay-7.1.4.jar
deleted file mode 100644
index 6406a7a..0000000
Binary files a/UMLibrary/libs/umeng-share-alipay-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-core-7.1.4.jar b/UMLibrary/libs/umeng-share-core-7.1.4.jar
deleted file mode 100644
index f007e6e..0000000
Binary files a/UMLibrary/libs/umeng-share-core-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-douban-7.1.4.jar b/UMLibrary/libs/umeng-share-douban-7.1.4.jar
deleted file mode 100644
index 240866d..0000000
Binary files a/UMLibrary/libs/umeng-share-douban-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-dropbox-7.1.4.jar b/UMLibrary/libs/umeng-share-dropbox-7.1.4.jar
deleted file mode 100644
index b448a17..0000000
Binary files a/UMLibrary/libs/umeng-share-dropbox-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-email-7.1.4.jar b/UMLibrary/libs/umeng-share-email-7.1.4.jar
deleted file mode 100644
index d1e3bd8..0000000
Binary files a/UMLibrary/libs/umeng-share-email-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-evernote-7.1.4.jar b/UMLibrary/libs/umeng-share-evernote-7.1.4.jar
deleted file mode 100644
index 214c1bf..0000000
Binary files a/UMLibrary/libs/umeng-share-evernote-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-facebook-7.1.4.jar b/UMLibrary/libs/umeng-share-facebook-7.1.4.jar
deleted file mode 100644
index cd9ed55..0000000
Binary files a/UMLibrary/libs/umeng-share-facebook-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-flickr-7.1.4.jar b/UMLibrary/libs/umeng-share-flickr-7.1.4.jar
deleted file mode 100644
index b85b3ee..0000000
Binary files a/UMLibrary/libs/umeng-share-flickr-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-foursquare-7.1.4.jar b/UMLibrary/libs/umeng-share-foursquare-7.1.4.jar
deleted file mode 100644
index 42ff213..0000000
Binary files a/UMLibrary/libs/umeng-share-foursquare-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-gplus-7.1.4.jar b/UMLibrary/libs/umeng-share-gplus-7.1.4.jar
deleted file mode 100644
index 1ff7cba..0000000
Binary files a/UMLibrary/libs/umeng-share-gplus-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-instagram-7.1.4.jar b/UMLibrary/libs/umeng-share-instagram-7.1.4.jar
deleted file mode 100644
index cf7ff22..0000000
Binary files a/UMLibrary/libs/umeng-share-instagram-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-kakao-7.1.4.jar b/UMLibrary/libs/umeng-share-kakao-7.1.4.jar
deleted file mode 100644
index dc0ad4d..0000000
Binary files a/UMLibrary/libs/umeng-share-kakao-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-laiwang-7.1.4.jar b/UMLibrary/libs/umeng-share-laiwang-7.1.4.jar
deleted file mode 100644
index eb5b596..0000000
Binary files a/UMLibrary/libs/umeng-share-laiwang-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-line-7.1.4.jar b/UMLibrary/libs/umeng-share-line-7.1.4.jar
deleted file mode 100644
index c442092..0000000
Binary files a/UMLibrary/libs/umeng-share-line-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-linkedin-7.1.4.jar b/UMLibrary/libs/umeng-share-linkedin-7.1.4.jar
deleted file mode 100644
index 8a53c30..0000000
Binary files a/UMLibrary/libs/umeng-share-linkedin-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-pinterest-7.1.4.jar b/UMLibrary/libs/umeng-share-pinterest-7.1.4.jar
deleted file mode 100644
index c2ceda5..0000000
Binary files a/UMLibrary/libs/umeng-share-pinterest-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-pocket-7.1.4.jar b/UMLibrary/libs/umeng-share-pocket-7.1.4.jar
deleted file mode 100644
index f22580b..0000000
Binary files a/UMLibrary/libs/umeng-share-pocket-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-renren-7.1.4.jar b/UMLibrary/libs/umeng-share-renren-7.1.4.jar
deleted file mode 100644
index 9ec249f..0000000
Binary files a/UMLibrary/libs/umeng-share-renren-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-sina-full-7.1.4.jar b/UMLibrary/libs/umeng-share-sina-full-7.1.4.jar
deleted file mode 100644
index bd458c6..0000000
Binary files a/UMLibrary/libs/umeng-share-sina-full-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-sms-7.1.4.jar b/UMLibrary/libs/umeng-share-sms-7.1.4.jar
deleted file mode 100644
index c0d6c5b..0000000
Binary files a/UMLibrary/libs/umeng-share-sms-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-tencentWB-7.1.4.jar b/UMLibrary/libs/umeng-share-tencentWB-7.1.4.jar
deleted file mode 100644
index e62ada2..0000000
Binary files a/UMLibrary/libs/umeng-share-tencentWB-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-tumblr-7.1.4.jar b/UMLibrary/libs/umeng-share-tumblr-7.1.4.jar
deleted file mode 100644
index e3678b4..0000000
Binary files a/UMLibrary/libs/umeng-share-tumblr-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-twitter-7.1.4.jar b/UMLibrary/libs/umeng-share-twitter-7.1.4.jar
deleted file mode 100644
index 50d634e..0000000
Binary files a/UMLibrary/libs/umeng-share-twitter-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-vkontakte-7.1.4.jar b/UMLibrary/libs/umeng-share-vkontakte-7.1.4.jar
deleted file mode 100644
index 2ee9568..0000000
Binary files a/UMLibrary/libs/umeng-share-vkontakte-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-wechat-full-7.1.4.jar b/UMLibrary/libs/umeng-share-wechat-full-7.1.4.jar
deleted file mode 100644
index d64d699..0000000
Binary files a/UMLibrary/libs/umeng-share-wechat-full-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-whatsapp-7.1.4.jar b/UMLibrary/libs/umeng-share-whatsapp-7.1.4.jar
deleted file mode 100644
index d712162..0000000
Binary files a/UMLibrary/libs/umeng-share-whatsapp-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-wxwork-7.1.4.jar b/UMLibrary/libs/umeng-share-wxwork-7.1.4.jar
deleted file mode 100644
index a4367c7..0000000
Binary files a/UMLibrary/libs/umeng-share-wxwork-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-yinxin-7.1.4.jar b/UMLibrary/libs/umeng-share-yinxin-7.1.4.jar
deleted file mode 100644
index bcab8c3..0000000
Binary files a/UMLibrary/libs/umeng-share-yinxin-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-share-ynote-7.1.4.jar b/UMLibrary/libs/umeng-share-ynote-7.1.4.jar
deleted file mode 100644
index f7a9545..0000000
Binary files a/UMLibrary/libs/umeng-share-ynote-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-shareboard-widget-7.1.4.jar b/UMLibrary/libs/umeng-shareboard-widget-7.1.4.jar
deleted file mode 100644
index 23f7a0f..0000000
Binary files a/UMLibrary/libs/umeng-shareboard-widget-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-sharetool-7.1.4.jar b/UMLibrary/libs/umeng-sharetool-7.1.4.jar
deleted file mode 100644
index f5e8c25..0000000
Binary files a/UMLibrary/libs/umeng-sharetool-7.1.4.jar and /dev/null differ
diff --git a/UMLibrary/libs/umeng-umdid-1.1.0.jar b/UMLibrary/libs/umeng-umdid-1.1.0.jar
new file mode 100644
index 0000000..e7c32a0
Binary files /dev/null and b/UMLibrary/libs/umeng-umdid-1.1.0.jar differ
diff --git a/UMLibrary/libs/utdid-1.5.2.1.jar b/UMLibrary/libs/utdid-1.5.2.1.jar
deleted file mode 100644
index 3360670..0000000
Binary files a/UMLibrary/libs/utdid-1.5.2.1.jar and /dev/null differ
diff --git a/UMLibrary/libs/uyumao-1.1.4.aar b/UMLibrary/libs/uyumao-1.1.4.aar
new file mode 100644
index 0000000..8b4f6cb
Binary files /dev/null and b/UMLibrary/libs/uyumao-1.1.4.aar differ
diff --git a/UMLibrary/libs/x86/libcocklogic-1.1.3.so b/UMLibrary/libs/x86/libcocklogic-1.1.3.so
deleted file mode 100755
index 4800df9..0000000
Binary files a/UMLibrary/libs/x86/libcocklogic-1.1.3.so and /dev/null differ
diff --git a/UMLibrary/libs/x86/libtnet-3.1.14.so b/UMLibrary/libs/x86/libtnet-3.1.14.so
deleted file mode 100644
index 4da3eea..0000000
Binary files a/UMLibrary/libs/x86/libtnet-3.1.14.so and /dev/null differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_google.png b/UMLibrary/res/drawable/umeng_socialize_google.png
deleted file mode 100644
index cf960b6..0000000
Binary files a/UMLibrary/res/drawable/umeng_socialize_google.png and /dev/null differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_laiwang.png b/UMLibrary/res/drawable/umeng_socialize_laiwang.png
deleted file mode 100644
index 04d245e..0000000
Binary files a/UMLibrary/res/drawable/umeng_socialize_laiwang.png and /dev/null differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_laiwang_dynamic.png b/UMLibrary/res/drawable/umeng_socialize_laiwang_dynamic.png
deleted file mode 100644
index f95a2e7..0000000
Binary files a/UMLibrary/res/drawable/umeng_socialize_laiwang_dynamic.png and /dev/null differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_renren.png b/UMLibrary/res/drawable/umeng_socialize_renren.png
deleted file mode 100644
index 41aa69a..0000000
Binary files a/UMLibrary/res/drawable/umeng_socialize_renren.png and /dev/null differ
diff --git a/UMLibrary/res/values/string.xml b/UMLibrary/res/values/string.xml
deleted file mode 100644
index 045e125..0000000
--- a/UMLibrary/res/values/string.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/UMLibrary/res/values/umeng_socialize_style.xml b/UMLibrary/res/values/umeng_socialize_style.xml
deleted file mode 100644
index ab0f01f..0000000
--- a/UMLibrary/res/values/umeng_socialize_style.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/UMLibrary/src/main/AndroidManifest.xml b/UMLibrary/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..326b75d
--- /dev/null
+++ b/UMLibrary/src/main/AndroidManifest.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UMLibrary/assets/geo_global_ca.cer b/UMLibrary/src/main/assets/geo_global_ca.cer
similarity index 100%
rename from UMLibrary/assets/geo_global_ca.cer
rename to UMLibrary/src/main/assets/geo_global_ca.cer
diff --git a/UMLibrary/res/drawable/umeng_socialize_back_icon.png b/UMLibrary/src/main/res/drawable/umeng_socialize_back_icon.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_back_icon.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_back_icon.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_btn_bg.xml b/UMLibrary/src/main/res/drawable/umeng_socialize_btn_bg.xml
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_btn_bg.xml
rename to UMLibrary/src/main/res/drawable/umeng_socialize_btn_bg.xml
diff --git a/UMLibrary/res/drawable/umeng_socialize_copy.png b/UMLibrary/src/main/res/drawable/umeng_socialize_copy.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_copy.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_copy.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_copyurl.png b/UMLibrary/src/main/res/drawable/umeng_socialize_copyurl.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_copyurl.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_copyurl.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_delete.png b/UMLibrary/src/main/res/drawable/umeng_socialize_delete.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_delete.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_delete.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_edit_bg.xml b/UMLibrary/src/main/res/drawable/umeng_socialize_edit_bg.xml
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_edit_bg.xml
rename to UMLibrary/src/main/res/drawable/umeng_socialize_edit_bg.xml
diff --git a/UMLibrary/res/drawable/umeng_socialize_menu_default.png b/UMLibrary/src/main/res/drawable/umeng_socialize_menu_default.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_menu_default.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_menu_default.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_more.png b/UMLibrary/src/main/res/drawable/umeng_socialize_more.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_more.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_more.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_share_music.png b/UMLibrary/src/main/res/drawable/umeng_socialize_share_music.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_share_music.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_share_music.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_share_video.png b/UMLibrary/src/main/res/drawable/umeng_socialize_share_video.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_share_video.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_share_video.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_share_web.png b/UMLibrary/src/main/res/drawable/umeng_socialize_share_web.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_share_web.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_share_web.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_tx.png b/UMLibrary/src/main/res/drawable/umeng_socialize_tx.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_tx.png
rename to UMLibrary/src/main/res/drawable/umeng_socialize_tx.png
diff --git a/UMLibrary/res/layout/socialize_share_menu_item.xml b/UMLibrary/src/main/res/layout/socialize_share_menu_item.xml
similarity index 100%
rename from UMLibrary/res/layout/socialize_share_menu_item.xml
rename to UMLibrary/src/main/res/layout/socialize_share_menu_item.xml
diff --git a/UMLibrary/res/layout/umeng_socialize_oauth_dialog.xml b/UMLibrary/src/main/res/layout/umeng_socialize_oauth_dialog.xml
similarity index 100%
rename from UMLibrary/res/layout/umeng_socialize_oauth_dialog.xml
rename to UMLibrary/src/main/res/layout/umeng_socialize_oauth_dialog.xml
diff --git a/UMLibrary/res/layout/umeng_socialize_share.xml b/UMLibrary/src/main/res/layout/umeng_socialize_share.xml
similarity index 100%
rename from UMLibrary/res/layout/umeng_socialize_share.xml
rename to UMLibrary/src/main/res/layout/umeng_socialize_share.xml
diff --git a/UMLibrary/res/layout/upush_bar_image_notification.xml b/UMLibrary/src/main/res/layout/upush_bar_image_notification.xml
similarity index 100%
rename from UMLibrary/res/layout/upush_bar_image_notification.xml
rename to UMLibrary/src/main/res/layout/upush_bar_image_notification.xml
diff --git a/UMLibrary/res/layout/upush_notification.xml b/UMLibrary/src/main/res/layout/upush_notification.xml
similarity index 100%
rename from UMLibrary/res/layout/upush_notification.xml
rename to UMLibrary/src/main/res/layout/upush_notification.xml
diff --git a/UMLibrary/res/values/umeng_socialize_shareview_strings.xml b/UMLibrary/src/main/res/values/umeng_socialize_shareview_strings.xml
similarity index 100%
rename from UMLibrary/res/values/umeng_socialize_shareview_strings.xml
rename to UMLibrary/src/main/res/values/umeng_socialize_shareview_strings.xml
diff --git a/UMLibrary/src/main/res/values/umeng_socialize_style.xml b/UMLibrary/src/main/res/values/umeng_socialize_style.xml
new file mode 100644
index 0000000..785505c
--- /dev/null
+++ b/UMLibrary/src/main/res/values/umeng_socialize_style.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 8894660..89c28c4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,13 +1,7 @@
apply plugin: 'com.android.application'
android {
- compileSdkVersion 30
-
- repositories {
- flatDir {
- dirs 'libs'
- }
- }
+ compileSdkVersion 34
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
@@ -16,29 +10,15 @@ android {
defaultConfig {
applicationId "com.umeng.soexample"
- minSdkVersion 18
+ minSdkVersion 21
targetSdkVersion 30
versionCode 1
versionName "1.0"
- //testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
-
- //jackOptions{
- // enabled true
- //}
-
ndk {//PushSDK目前只支持4种架构
abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86'
}
}
- buildTypes {
- release {
- minifyEnabled false
- signingConfig signingConfigs.debug
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
- }
- }
-
signingConfigs {
debug {
storeFile file('debug.keystore')
@@ -48,6 +28,19 @@ android {
}
}
+ buildTypes {
+ release {
+ minifyEnabled false
+ signingConfig signingConfigs.debug
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ }
+
+// packagingOptions {
+// exclude 'AndroidManifest.xml'
+// exclude 'resources.arsc'
+// }
+
lintOptions {
checkReleaseBuilds false
abortOnError false
@@ -55,21 +48,25 @@ android {
}
dependencies {
- implementation fileTree(include: ['*.jar'], dir: 'libs')
- api project(':UMLibrary')
+ implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs')
+ implementation project(':UMLibrary')
- // 显式依赖umeng asms库
- implementation files('libs/umeng-asms-v1.2.2.aar') // asms包依赖(必选)
- // 显式依赖umeng apm库
- implementation files('libs/umeng-apm-v1.1.1.aar') // native crash包依赖(必选)
+ //U-Share 依赖
+ //noinspection GradleCompatible
+ implementation 'com.android.support:support-v4:25.0.0'
implementation 'com.twitter.sdk.android:twitter-core:3.1.1'
implementation 'com.twitter.sdk.android:tweet-composer:3.1.1'
//新浪官方依赖库
- implementation 'com.sina.weibo.sdk:core:10.10.0:openDefaultRelease@aar'
- //QQ官方依赖库
- implementation 'com.tencent.tauth:qqopensdk:3.51.2'
+ implementation('io.github.sinaweibosdk:core:13.10.1') {
+ exclude module: 'unspecified'
+ }
//微信官方依赖库
- implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:6.6.5'
+ implementation 'com.tencent.mm.opensdk:wechat-sdk-android:6.8.24'
+ //钉钉官方sdk
+ implementation "com.alibaba.android:ddsharesdk:1.2.2"
+ //字节sdk
+ implementation 'com.bytedance.ies.ugc.aweme:opensdk-china-external:0.1.9.0'
+ implementation 'com.bytedance.ies.ugc.aweme:opensdk-common:0.1.9.0'
}
diff --git a/app/libs/umeng-apm-v1.1.1.aar b/app/libs/umeng-apm-v1.1.1.aar
deleted file mode 100644
index ec5c116..0000000
Binary files a/app/libs/umeng-apm-v1.1.1.aar and /dev/null differ
diff --git a/app/libs/umeng-apm-v2.0.3.aar b/app/libs/umeng-apm-v2.0.3.aar
new file mode 100644
index 0000000..8a5f5dc
Binary files /dev/null and b/app/libs/umeng-apm-v2.0.3.aar differ
diff --git a/app/libs/umeng-asms-v1.2.2.aar b/app/libs/umeng-asms-v1.2.2.aar
deleted file mode 100644
index 5ad952f..0000000
Binary files a/app/libs/umeng-asms-v1.2.2.aar and /dev/null differ
diff --git a/app/libs/umeng-asms-v1.8.7.aar b/app/libs/umeng-asms-v1.8.7.aar
new file mode 100644
index 0000000..47a932b
Binary files /dev/null and b/app/libs/umeng-asms-v1.8.7.aar differ
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index b985d95..df280d5 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -14,6 +14,7 @@
-keep class org.android.** {*;}
-keep class anet.channel.** {*;}
-keep class com.umeng.** {*;}
+-keep class com.uyumao.** { *; }
-keep class com.xiaomi.** {*;}
-keep class com.huawei.** {*;}
-keep class com.meizu.** {*;}
@@ -26,4 +27,19 @@
-keep public class **.R$* {
public static final int *;
-}
\ No newline at end of file
+}
+
+-keep class com.umeng.** {*;}
+
+-keep class org.repackage.** {*;}
+
+-keep class com.uyumao.** { *; }
+
+-keepclassmembers class * {
+ public (org.json.JSONObject);
+}
+
+-keepclassmembers enum * {
+ public static **[] values();
+ public static ** valueOf(java.lang.String);
+}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b33b517..7922f48 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -4,6 +4,7 @@
package="com.umeng.soexample">
+
@@ -18,13 +19,19 @@
+
+
+
+
@@ -53,42 +60,42 @@
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@android:style/Theme.Black.NoTitleBar" />
+ android:theme="@style/myTransparent" />
@@ -102,7 +109,6 @@
android:name=".yxapi.YXEntryActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true"
- android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
+
+
@@ -175,7 +183,6 @@
-
-
+ android:launchMode="singleTask">
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/app/src/main/java/com/umeng/soexample/App.java b/app/src/main/java/com/umeng/soexample/App.java
index c3ce2fc..aa5cd1a 100644
--- a/app/src/main/java/com/umeng/soexample/App.java
+++ b/app/src/main/java/com/umeng/soexample/App.java
@@ -13,6 +13,10 @@
import android.widget.RemoteViews;
import android.widget.Toast;
+import com.taobao.accs.ACCSClient;
+import com.taobao.accs.AccsClientConfig;
+import com.taobao.agoo.TaobaoRegister;
+import com.tencent.tauth.Tencent;
import com.umeng.commonsdk.UMConfigure;
import com.umeng.message.IUmengRegisterCallback;
import com.umeng.message.MsgConstant;
@@ -25,6 +29,7 @@
import com.umeng.analytics.MobclickAgent;
import com.umeng.soexample.push.UmengNotificationService;
+import com.umeng.soexample.sp.SharedPreferencesHelper;
/**
* Created by wangfei on 2018/1/23.
@@ -32,242 +37,31 @@
public class App extends Application {
-
- private static final String TAG = App.class.getName();
- public static final String UPDATE_STATUS_ACTION = "com.umeng.message.example.action.UPDATE_STATUS";
- private Handler handler;
+ SharedPreferencesHelper sharedPreferencesHelper;
@Override
public void onCreate() {
super.onCreate();
+ sharedPreferencesHelper = new SharedPreferencesHelper(this, "umeng");
+
//设置LOG开关,默认为false
UMConfigure.setLogEnabled(true);
-// try {
-// Class> aClass = Class.forName("com.umeng.commonsdk.UMConfigure");
-// Field[] fs = aClass.getDeclaredFields();
-// for (Field f:fs){
-// Log.e("xxxxxx","ff="+f.getName()+" "+f.getType().getName());
-// }
-// } catch (ClassNotFoundException e) {
-// e.printStackTrace();
-// }
- //初始化组件化基础库, 统计SDK/推送SDK/分享SDK都必须调用此初始化接口
- UMConfigure.init(this, "59892f08310c9307b60023d0", "Umeng", UMConfigure.DEVICE_TYPE_PHONE,
- "669c30a9584623e70e8cd01b0381dcb4");
- //集成umeng-crash-vx.x.x.aar,则需要关闭原有统计SDK异常捕获功能
- MobclickAgent.setCatchUncaughtExceptions(false);
- //PushSDK初始化(如使用推送SDK,必须调用此方法)
- initUpush();
-
- //统计SDK是否支持采集在子进程中打点的自定义事件,默认不支持
- UMConfigure.setProcessEvent(true);//支持多进程打点
-
- // 页面数据采集模式
- // setPageCollectionMode接口参数说明:
- // 1. MobclickAgent.PageMode.AUTO: 建议大多数用户使用本采集模式,SDK在此模式下自动采集Activity
- // 页面访问路径,开发者不需要针对每一个Activity在onResume/onPause函数中进行手动埋点。在此模式下,
- // 开发者如需针对Fragment、CustomView等自定义页面进行页面统计,直接调用MobclickAgent.onPageStart/
- // MobclickAgent.onPageEnd手动埋点即可。此采集模式简化埋点工作,唯一缺点是在Android 4.0以下设备中
- // 统计不到Activity页面数据和各类基础指标(提示:目前Android 4.0以下设备市场占比已经极小)。
-
- // 2. MobclickAgent.PageMode.MANUAL:对于要求在Android 4.0以下设备中也能正常采集数据的App,可以使用
- // 本模式,开发者需要在每一个Activity的onResume函数中手动调用MobclickAgent.onResume接口,在Activity的
- // onPause函数中手动调用MobclickAgent.onPause接口。在此模式下,开发者如需针对Fragment、CustomView等
- // 自定义页面进行页面统计,直接调用MobclickAgent.onPageStart/MobclickAgent.onPageEnd手动埋点即可。
-
- // 如下两种LEGACY模式不建议首次集成友盟统计SDK的新用户选用。
- // 如果您是友盟统计SDK的老用户,App需要从老版本统计SDK升级到8.0.0版本统计SDK,
- // 并且:您的App之前MobclickAgent.onResume/onPause接口埋点分散在所有Activity
- // 中,逐个删除修改工作量很大且易出错。
- // 若您的App符合以上特征,可以选用如下两种LEGACY模式,否则不建议继续使用LEGACY模式。
- // 简单来说,升级SDK的老用户,如果不需要手动统计页面路径,选用LEGACY_AUTO模式。
- // 如果需要手动统计页面路径,选用LEGACY_MANUAL模式。
- // 3. MobclickAgent.PageMode.LEGACY_AUTO: 本模式适合不需要对Fragment、CustomView
- // 等自定义页面进行页面访问统计的开发者,SDK仅对App中所有Activity进行页面统计,开发者需要在
- // 每一个Activity的onResume函数中手动调用MobclickAgent.onResume接口,在Activity的
- // onPause函数中手动调用MobclickAgent.onPause接口。此模式下MobclickAgent.onPageStart
- // ,MobclickAgent.onPageEnd这两个接口无效。
-
- // 4. MobclickAgent.PageMode.LEGACY_MANUAL: 本模式适合需要对Fragment、CustomView
- // 等自定义页面进行手动页面统计的开发者,开发者如需针对Fragment、CustomView等
- // 自定义页面进行页面统计,直接调用MobclickAgent.onPageStart/MobclickAgent.onPageEnd
- // 手动埋点即可。开发者还需要在每一个Activity的onResume函数中手动调用MobclickAgent.onResume接口,
- // 在Activity的onPause函数中手动调用MobclickAgent.onPause接口。
- MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.AUTO);
- }
-
- private void initUpush() {
- PushAgent pushAgent = PushAgent.getInstance(this);
- handler = new Handler(getMainLooper());
-
- //sdk开启通知声音
- pushAgent.setNotificationPlaySound(MsgConstant.NOTIFICATION_PLAY_SDK_ENABLE);
- // sdk关闭通知声音
- // mPushAgent.setNotificationPlaySound(MsgConstant.NOTIFICATION_PLAY_SDK_DISABLE);
- // 通知声音由服务端控制
- // mPushAgent.setNotificationPlaySound(MsgConstant.NOTIFICATION_PLAY_SERVER);
-
- // mPushAgent.setNotificationPlayLights(MsgConstant.NOTIFICATION_PLAY_SDK_DISABLE);
- // mPushAgent.setNotificationPlayVibrate(MsgConstant.NOTIFICATION_PLAY_SDK_DISABLE);
-
- UmengMessageHandler messageHandler = new UmengMessageHandler() {
-
- /**
- * 通知的回调方法(通知送达时会回调)
- */
- @Override
- public void dealWithNotificationMessage(Context context, UMessage msg) {
- //调用super,会展示通知,不调用super,则不展示通知。
- super.dealWithNotificationMessage(context, msg);
- }
-
- /**
- * 自定义消息的回调方法
- */
- @Override
- public void dealWithCustomMessage(final Context context, final UMessage msg) {
+ //友盟预初始化
+ UMConfigure.preInit(getApplicationContext(), "59892f08310c9307b60023d0", "Umeng");
- handler.post(new Runnable() {
-
- @Override
- public void run() {
- // TODO Auto-generated method stub
- // 对自定义消息的处理方式,点击或者忽略
- boolean isClickOrDismissed = true;
- if (isClickOrDismissed) {
- //自定义消息的点击统计
- UTrack.getInstance(getApplicationContext()).trackMsgClick(msg);
- } else {
- //自定义消息的忽略统计
- UTrack.getInstance(getApplicationContext()).trackMsgDismissed(msg);
- }
- Toast.makeText(context, msg.custom, Toast.LENGTH_LONG).show();
- }
- });
- }
-
- /**
- * 自定义通知栏样式的回调方法
- */
- @Override
- public Notification getNotification(Context context, UMessage msg) {
- switch (msg.builder_id) {
- case 1:
- Notification.Builder builder;
- if (Build.VERSION.SDK_INT >= 26) {
- if (!UmengMessageHandler.isChannelSet) {
- UmengMessageHandler.isChannelSet = true;
- NotificationChannel chan = new NotificationChannel(UmengMessageHandler.PRIMARY_CHANNEL,
- PushAgent.getInstance(context).getNotificationChannelName(),
- NotificationManager.IMPORTANCE_DEFAULT);
- NotificationManager manager = (NotificationManager) context.getSystemService(
- Context.NOTIFICATION_SERVICE);
- if (manager != null) {
- manager.createNotificationChannel(chan);
- }
- }
- builder = new Notification.Builder(context, UmengMessageHandler.PRIMARY_CHANNEL);
- } else {
- builder = new Notification.Builder(context);
- }
- RemoteViews myNotificationView = new RemoteViews(context.getPackageName(),
- R.layout.notification_view);
- myNotificationView.setTextViewText(R.id.notification_title, msg.title);
- myNotificationView.setTextViewText(R.id.notification_text, msg.text);
- myNotificationView.setImageViewBitmap(R.id.notification_large_icon, getLargeIcon(context, msg));
- myNotificationView.setImageViewResource(R.id.notification_small_icon,
- getSmallIconId(context, msg));
- builder.setContent(myNotificationView)
- .setSmallIcon(getSmallIconId(context, msg))
- .setTicker(msg.ticker)
- .setAutoCancel(true);
- return builder.getNotification();
- default:
- //默认为0,若填写的builder_id并不存在,也使用默认。
- return super.getNotification(context, msg);
- }
- }
- };
- pushAgent.setMessageHandler(messageHandler);
-
- /*
- * 自定义行为的回调处理,参考文档:高级功能-通知的展示及提醒-自定义通知打开动作
- * UmengNotificationClickHandler是在BroadcastReceiver中被调用,故
- * 如果需启动Activity,需添加Intent.FLAG_ACTIVITY_NEW_TASK
+ /**
+ * 打开app首次隐私协议授权,以及sdk初始化,判断逻辑请查看SplashTestActivity
*/
- UmengNotificationClickHandler notificationClickHandler = new UmengNotificationClickHandler() {
-
- @Override
- public void launchApp(Context context, UMessage msg) {
- super.launchApp(context, msg);
- }
-
- @Override
- public void openUrl(Context context, UMessage msg) {
- super.openUrl(context, msg);
- }
-
- @Override
- public void openActivity(Context context, UMessage msg) {
- super.openActivity(context, msg);
- }
-
- @Override
- public void dealWithCustomAction(Context context, UMessage msg) {
- Toast.makeText(context, msg.custom, Toast.LENGTH_LONG).show();
- }
- };
- //使用自定义的NotificationHandler
- pushAgent.setNotificationClickHandler(notificationClickHandler);
-
- //注册推送服务 每次调用register都会回调该接口
- pushAgent.register(new IUmengRegisterCallback() {
- @Override
- public void onSuccess(String deviceToken) {
- Log.i(TAG, "device token: " + deviceToken);
- sendBroadcast(new Intent(UPDATE_STATUS_ACTION));
- }
-
- @Override
- public void onFailure(String s, String s1) {
- Log.i(TAG, "register failed: " + s + " " + s1);
- sendBroadcast(new Intent(UPDATE_STATUS_ACTION));
- }
- });
-
- //使用完全自定义处理
-// pushAgent.setPushIntentServiceClass(UmengNotificationService.class);
-
- //小米通道
- //MiPushRegistar.register(this, XIAOMI_ID, XIAOMI_KEY);
- //华为通道
- //HuaWeiRegister.register(this);
- //魅族通道
- //MeizuRegister.register(this, MEIZU_APPID, MEIZU_APPKEY);
- }
-
- {
+ //判断是否同意隐私协议,uminit为1时为已经同意,直接初始化umsdk
+ if (sharedPreferencesHelper.getSharedPreference("uminit", "").equals("1")) {
+ //友盟正式初始化
+ UmInitConfig umInitConfig = new UmInitConfig();
+ umInitConfig.UMinit(getApplicationContext());
+ //QQ官方sdk授权
+ Tencent.setIsPermissionGranted(true);
- String FileProvider = "com.umeng.soexample.fileprovider";
- PlatformConfig.setWeixin("wxdc1e388c3822c80b", "3baf1193c85774b3fd9d18447d76cab0");
- PlatformConfig.setWXFileProvider(FileProvider);
- //企业微信设置
- PlatformConfig.setWXWork("wwac6ffb259ff6f66a", "EU1LRsWC5uWn6KUuYOiWUpkoH45eOA0yH-ngL8579zs", "1000002", "wwauthac6ffb259ff6f66a000002");
- PlatformConfig.setWXWorkFileProvider(FileProvider);
+ }
- PlatformConfig.setSinaWeibo("3921700954", "04b48b094faeb16683c32669824ebdad", "http://sns.whalecloud.com/");
- PlatformConfig.setSinaFileProvider(FileProvider);
- PlatformConfig.setYixin("yxc0614e80c9304c11b0391514d09f13bf");
- PlatformConfig.setQQZone("101830139", "5d63ae8858f1caab67715ccd6c18d7a5");
- PlatformConfig.setQQFileProvider(FileProvider);
- PlatformConfig.setTwitter("3aIN7fuF685MuZ7jtXkQxalyi", "MK6FEYG63eWcpDFgRYw4w9puJhzDl0tyuqWjZ3M7XJuuG7mMbO");
- PlatformConfig.setAlipay("2015111700822536");
- PlatformConfig.setLaiwang("laiwangd497e70d4", "d497e70d4c3e4efeab1381476bac4c5e");
- PlatformConfig.setPinterest("1439206");
- PlatformConfig.setKakao("e4f60e065048eb031e235c806b31c70f");
- PlatformConfig.setDing("dingoalmlnohc0wggfedpk");
- PlatformConfig.setVKontakte("5764965", "5My6SNliAaLxEm3Lyd9J");
- PlatformConfig.setDropbox("oz8v5apet3arcdy", "h7p2pjbzkkxt02a");
}
}
diff --git a/app/src/main/java/com/umeng/soexample/BaseActivity.java b/app/src/main/java/com/umeng/soexample/BaseActivity.java
index 94a349d..70d6100 100644
--- a/app/src/main/java/com/umeng/soexample/BaseActivity.java
+++ b/app/src/main/java/com/umeng/soexample/BaseActivity.java
@@ -11,6 +11,7 @@
import android.widget.TextView;
import com.umeng.analytics.MobclickAgent;
+import com.umeng.message.PushAgent;
/**
* Created by wangfei on 2018/1/23.
@@ -29,6 +30,10 @@ protected void onCreate(Bundle savedInstanceState) {
setContentView(getLayout());
setTitle(getResources().getString(R.string.app_name));
+ //推送平台多维度推送决策必须调用方法(需要同意隐私协议之后初始化完成调用)
+ PushAgent.getInstance(this).onAppStart();
+
+
}
public abstract int getLayout();
public void setTitle(String title){
diff --git a/app/src/main/java/com/umeng/soexample/HomeActivity.java b/app/src/main/java/com/umeng/soexample/HomeActivity.java
index d847fad..06d2c82 100644
--- a/app/src/main/java/com/umeng/soexample/HomeActivity.java
+++ b/app/src/main/java/com/umeng/soexample/HomeActivity.java
@@ -52,13 +52,6 @@ public void onClick(View view) {
}
});
- if(Build.VERSION.SDK_INT >= 23){
- String[] mPermissionList = new String[]{
- Manifest.permission.WRITE_EXTERNAL_STORAGE,
- Manifest.permission.READ_PHONE_STATE,
- Manifest.permission.READ_EXTERNAL_STORAGE};
- this.requestPermissions(mPermissionList, 123);
- }
}
diff --git a/app/src/main/java/com/umeng/soexample/UmInitConfig.java b/app/src/main/java/com/umeng/soexample/UmInitConfig.java
new file mode 100644
index 0000000..d760798
--- /dev/null
+++ b/app/src/main/java/com/umeng/soexample/UmInitConfig.java
@@ -0,0 +1,243 @@
+package com.umeng.soexample;
+
+import android.app.Notification;
+import android.app.NotificationChannel;
+import android.content.Context;
+import android.content.Intent;
+import android.os.Build;
+import android.os.Handler;
+import android.util.Log;
+import android.widget.RemoteViews;
+import android.widget.Toast;
+
+import com.umeng.analytics.MobclickAgent;
+import com.umeng.commonsdk.UMConfigure;
+import com.umeng.message.MsgConstant;
+import com.umeng.message.PushAgent;
+import com.umeng.message.UTrack;
+import com.umeng.message.UmengMessageHandler;
+import com.umeng.message.UmengNotificationClickHandler;
+import com.umeng.message.api.UPushRegisterCallback;
+import com.umeng.message.common.UPushNotificationChannel;
+import com.umeng.message.entity.UMessage;
+import com.umeng.socialize.PlatformConfig;
+
+import static android.os.Looper.getMainLooper;
+
+
+public class UmInitConfig {
+
+ private static final String TAG = App.class.getName();
+ public static final String UPDATE_STATUS_ACTION = "com.umeng.message.example.action.UPDATE_STATUS";
+ private Handler handler;
+
+ public void UMinit(Context context){
+ //初始化组件化基础库, 统计SDK/推送SDK/分享SDK都必须调用此初始化接口
+ UMConfigure.init(context, "59892f08310c9307b60023d0", "Umeng", UMConfigure.DEVICE_TYPE_PHONE,
+ "669c30a9584623e70e8cd01b0381dcb4");
+
+ String fileProvider = "com.umeng.soexample.fileprovider";
+ PlatformConfig.setFileProvider(fileProvider);
+ PlatformConfig.setWeixin("wxdc1e388c3822c80b", "3baf1193c85774b3fd9d18447d76cab0");
+ //企业微信设置
+ PlatformConfig.setWXWork("wwac6ffb259ff6f66a", "EU1LRsWC5uWn6KUuYOiWUpkoH45eOA0yH-ngL8579zs", "1000002", "wwauthac6ffb259ff6f66a000002");
+
+ PlatformConfig.setBytedance("awd1cemo6d0l69zp", "awd1cemo6d0l69zp", "a2dce41fff214270dd4a7f60ac885491", fileProvider);
+
+ PlatformConfig.setSinaWeibo("3921700954", "04b48b094faeb16683c32669824ebdad", "http://sns.whalecloud.com/");
+ PlatformConfig.setYixin("yxc0614e80c9304c11b0391514d09f13bf");
+ PlatformConfig.setQQZone("101830139", "5d63ae8858f1caab67715ccd6c18d7a5");
+ PlatformConfig.setTwitter("3aIN7fuF685MuZ7jtXkQxalyi", "MK6FEYG63eWcpDFgRYw4w9puJhzDl0tyuqWjZ3M7XJuuG7mMbO");
+ PlatformConfig.setAlipay("2015111700822536");
+ PlatformConfig.setPinterest("1439206");
+ PlatformConfig.setKakao("e4f60e065048eb031e235c806b31c70f");
+ PlatformConfig.setDing("dingoalmlnohc0wggfedpk");
+
+ PlatformConfig.setVKontakte("5764965", "5My6SNliAaLxEm3Lyd9J");
+ PlatformConfig.setDropbox("oz8v5apet3arcdy", "h7p2pjbzkkxt02a");
+ PlatformConfig.setHonor("104408749", "fb1d1d0320a0f661cb1c22892622501f3affceeafb625a5646f299a04c1602ec");
+
+ //集成umeng-crash-vx.x.x.aar,则需要关闭原有统计SDK异常捕获功能
+ MobclickAgent.setCatchUncaughtExceptions(false);
+ //PushSDK初始化(如使用推送SDK,必须调用此方法)
+ initUpush(context);
+
+ //统计SDK是否支持采集在子进程中打点的自定义事件,默认不支持
+ UMConfigure.setProcessEvent(true);//支持多进程打点
+
+ // 页面数据采集模式
+ // setPageCollectionMode接口参数说明:
+ // 1. MobclickAgent.PageMode.AUTO: 建议大多数用户使用本采集模式,SDK在此模式下自动采集Activity
+ // 页面访问路径,开发者不需要针对每一个Activity在onResume/onPause函数中进行手动埋点。在此模式下,
+ // 开发者如需针对Fragment、CustomView等自定义页面进行页面统计,直接调用MobclickAgent.onPageStart/
+ // MobclickAgent.onPageEnd手动埋点即可。此采集模式简化埋点工作,唯一缺点是在Android 4.0以下设备中
+ // 统计不到Activity页面数据和各类基础指标(提示:目前Android 4.0以下设备市场占比已经极小)。
+
+ // 2. MobclickAgent.PageMode.MANUAL:对于要求在Android 4.0以下设备中也能正常采集数据的App,可以使用
+ // 本模式,开发者需要在每一个Activity的onResume函数中手动调用MobclickAgent.onResume接口,在Activity的
+ // onPause函数中手动调用MobclickAgent.onPause接口。在此模式下,开发者如需针对Fragment、CustomView等
+ // 自定义页面进行页面统计,直接调用MobclickAgent.onPageStart/MobclickAgent.onPageEnd手动埋点即可。
+
+ // 如下两种LEGACY模式不建议首次集成友盟统计SDK的新用户选用。
+ // 如果您是友盟统计SDK的老用户,App需要从老版本统计SDK升级到8.0.0版本统计SDK,
+ // 并且:您的App之前MobclickAgent.onResume/onPause接口埋点分散在所有Activity
+ // 中,逐个删除修改工作量很大且易出错。
+ // 若您的App符合以上特征,可以选用如下两种LEGACY模式,否则不建议继续使用LEGACY模式。
+ // 简单来说,升级SDK的老用户,如果不需要手动统计页面路径,选用LEGACY_AUTO模式。
+ // 如果需要手动统计页面路径,选用LEGACY_MANUAL模式。
+ // 3. MobclickAgent.PageMode.LEGACY_AUTO: 本模式适合不需要对Fragment、CustomView
+ // 等自定义页面进行页面访问统计的开发者,SDK仅对App中所有Activity进行页面统计,开发者需要在
+ // 每一个Activity的onResume函数中手动调用MobclickAgent.onResume接口,在Activity的
+ // onPause函数中手动调用MobclickAgent.onPause接口。此模式下MobclickAgent.onPageStart
+ // ,MobclickAgent.onPageEnd这两个接口无效。
+
+ // 4. MobclickAgent.PageMode.LEGACY_MANUAL: 本模式适合需要对Fragment、CustomView
+ // 等自定义页面进行手动页面统计的开发者,开发者如需针对Fragment、CustomView等
+ // 自定义页面进行页面统计,直接调用MobclickAgent.onPageStart/MobclickAgent.onPageEnd
+ // 手动埋点即可。开发者还需要在每一个Activity的onResume函数中手动调用MobclickAgent.onResume接口,
+ // 在Activity的onPause函数中手动调用MobclickAgent.onPause接口。
+ MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.AUTO);
+
+ }
+
+ /**
+ * 主进程和子进程channel都需要进行初始化和注册
+ */
+ private void initUpush(Context context) {
+ PushAgent pushAgent = PushAgent.getInstance(context);
+ handler = new Handler(getMainLooper());
+
+ //sdk开启通知声音
+ pushAgent.setNotificationPlaySound(MsgConstant.NOTIFICATION_PLAY_SDK_ENABLE);
+ // sdk关闭通知声音
+ // mPushAgent.setNotificationPlaySound(MsgConstant.NOTIFICATION_PLAY_SDK_DISABLE);
+ // 通知声音由服务端控制
+ // mPushAgent.setNotificationPlaySound(MsgConstant.NOTIFICATION_PLAY_SERVER);
+
+ // mPushAgent.setNotificationPlayLights(MsgConstant.NOTIFICATION_PLAY_SDK_DISABLE);
+ // mPushAgent.setNotificationPlayVibrate(MsgConstant.NOTIFICATION_PLAY_SDK_DISABLE);
+
+ UmengMessageHandler messageHandler = new UmengMessageHandler() {
+
+ /**
+ * 通知的回调方法(通知送达时会回调)
+ */
+ @Override
+ public void dealWithNotificationMessage(Context context, UMessage msg) {
+ //调用super,会展示通知,不调用super,则不展示通知。
+ super.dealWithNotificationMessage(context, msg);
+ }
+
+ /**
+ * 自定义消息的回调方法
+ */
+ @Override
+ public void dealWithCustomMessage(final Context context, final UMessage msg) {
+ handler.post(new Runnable() {
+
+ @Override
+ public void run() {
+ // TODO Auto-generated method stub
+ // 对自定义消息的处理方式,点击或者忽略
+ boolean isClickOrDismissed = true;
+ if (isClickOrDismissed) {
+ //自定义消息的点击统计
+ UTrack.getInstance().trackMsgClick(msg);
+ } else {
+ //自定义消息的忽略统计
+ UTrack.getInstance().trackMsgDismissed(msg);
+ }
+ Toast.makeText(context, msg.custom, Toast.LENGTH_LONG).show();
+ }
+ });
+ }
+
+ /**
+ * 自定义通知栏样式的回调方法
+ */
+ @Override
+ public Notification getNotification(Context context, UMessage msg) {
+ switch (msg.builder_id) {
+ case 1:
+ Notification.Builder builder;
+ if (Build.VERSION.SDK_INT >= 26) {
+ NotificationChannel channel = UPushNotificationChannel.getDefaultMode(context);
+ builder = new Notification.Builder(context, channel.getId());
+ } else {
+ builder = new Notification.Builder(context);
+ }
+ RemoteViews myNotificationView = new RemoteViews(context.getPackageName(), R.layout.notification_view);
+ myNotificationView.setTextViewText(R.id.notification_title, msg.title);
+ myNotificationView.setTextViewText(R.id.notification_text, msg.text);
+ myNotificationView.setImageViewBitmap(R.id.notification_large_icon, getLargeIcon(context, msg));
+ myNotificationView.setImageViewResource(R.id.notification_small_icon, getSmallIconId(context, msg));
+ builder.setContent(myNotificationView)
+ .setSmallIcon(getSmallIconId(context, msg))
+ .setTicker(msg.ticker)
+ .setAutoCancel(true);
+ return builder.getNotification();
+ default:
+ //默认为0,若填写的builder_id并不存在,也使用默认。
+ return super.getNotification(context, msg);
+ }
+ }
+ };
+ pushAgent.setMessageHandler(messageHandler);
+
+ /*
+ * 自定义行为的回调处理,参考文档:高级功能-通知的展示及提醒-自定义通知打开动作
+ * UmengNotificationClickHandler是在BroadcastReceiver中被调用,故
+ * 如果需启动Activity,需添加Intent.FLAG_ACTIVITY_NEW_TASK
+ */
+ UmengNotificationClickHandler notificationClickHandler = new UmengNotificationClickHandler() {
+
+ @Override
+ public void launchApp(Context context, UMessage msg) {
+ super.launchApp(context, msg);
+ }
+
+ @Override
+ public void openUrl(Context context, UMessage msg) {
+ super.openUrl(context, msg);
+ }
+
+ @Override
+ public void openActivity(Context context, UMessage msg) {
+ super.openActivity(context, msg);
+ }
+
+ @Override
+ public void dealWithCustomAction(Context context, UMessage msg) {
+ Toast.makeText(context, msg.custom, Toast.LENGTH_LONG).show();
+ }
+ };
+ //使用自定义的NotificationHandler
+ pushAgent.setNotificationClickHandler(notificationClickHandler);
+
+ //注册推送服务 每次调用register都会回调该接口
+ pushAgent.register(new UPushRegisterCallback() {
+ @Override
+ public void onSuccess(String deviceToken) {
+ Log.i(TAG, "device token: " + deviceToken);
+ context.sendBroadcast(new Intent(UPDATE_STATUS_ACTION));
+ }
+
+ @Override
+ public void onFailure(String s, String s1) {
+ Log.i(TAG, "register failed: " + s + " " + s1);
+ context.sendBroadcast(new Intent(UPDATE_STATUS_ACTION));
+ }
+ });
+
+ //使用完全自定义处理
+// pushAgent.setPushIntentServiceClass(UmengNotificationService.class);
+
+ //小米通道
+ //MiPushRegistar.register(this, XIAOMI_ID, XIAOMI_KEY);
+ //华为通道
+ //HuaWeiRegister.register(this);
+ //魅族通道
+ //MeizuRegister.register(this, MEIZU_APPID, MEIZU_APPKEY);
+ }
+
+}
diff --git a/app/src/main/java/com/umeng/soexample/douyinapi/DouYinEntryActivity.java b/app/src/main/java/com/umeng/soexample/douyinapi/DouYinEntryActivity.java
new file mode 100644
index 0000000..c6e7950
--- /dev/null
+++ b/app/src/main/java/com/umeng/soexample/douyinapi/DouYinEntryActivity.java
@@ -0,0 +1,6 @@
+package com.umeng.soexample.douyinapi;
+
+import com.umeng.socialize.douyin.DYCallbackActivity;
+
+public class DouYinEntryActivity extends DYCallbackActivity {
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/umeng/soexample/push/MipushTestActivity.java b/app/src/main/java/com/umeng/soexample/push/MipushTestActivity.java
index d28aaae..a130d21 100644
--- a/app/src/main/java/com/umeng/soexample/push/MipushTestActivity.java
+++ b/app/src/main/java/com/umeng/soexample/push/MipushTestActivity.java
@@ -1,15 +1,13 @@
package com.umeng.soexample.push;
-import android.content.Intent;
import android.os.Bundle;
-import android.text.TextUtils;
import android.widget.TextView;
import com.umeng.message.UmengNotifyClickActivity;
+import com.umeng.message.entity.UMessage;
import com.umeng.soexample.R;
-import org.android.agoo.common.AgooConstants;
public class MipushTestActivity extends UmengNotifyClickActivity {
- private static String TAG = MipushTestActivity.class.getName();
+
private TextView mipushTextView;
@Override
@@ -20,16 +18,14 @@ protected void onCreate(Bundle bundle) {
}
@Override
- public void onMessage(Intent intent) {
- super.onMessage(intent);
- final String body = intent.getStringExtra(AgooConstants.MESSAGE_BODY);
- if (!TextUtils.isEmpty(body)) {
- runOnUiThread(new Runnable() {
- @Override
- public void run() {
- mipushTextView.setText(body);
- }
- });
- }
+ protected void onMessage(final UMessage uMessage) {
+ super.onMessage(uMessage);
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ mipushTextView.setText(uMessage.getRaw().toString());
+ }
+ });
}
+
}
diff --git a/app/src/main/java/com/umeng/soexample/push/MyNotificationService.java b/app/src/main/java/com/umeng/soexample/push/MyNotificationService.java
index fd8704c..f1510c8 100644
--- a/app/src/main/java/com/umeng/soexample/push/MyNotificationService.java
+++ b/app/src/main/java/com/umeng/soexample/push/MyNotificationService.java
@@ -12,12 +12,10 @@
import android.os.Build;
import android.os.IBinder;
-import com.umeng.message.PushAgent;
import com.umeng.message.UTrack;
-import com.umeng.message.UmengMessageHandler;
+import com.umeng.message.common.UPushNotificationChannel;
import com.umeng.message.entity.UMessage;
import com.umeng.soexample.R;
-import org.json.JSONException;
import org.json.JSONObject;
public class MyNotificationService extends Service {
@@ -38,11 +36,10 @@ public int onStartCommand(Intent intent, int flags, int startId) {
try {
UMessage msg = new UMessage(new JSONObject(message));
if (oldMessage != null) {
- UTrack.getInstance(getApplicationContext()).setClearPrevMessage(true);
- UTrack.getInstance(getApplicationContext()).trackMsgDismissed(oldMessage);
+ UTrack.getInstance().trackMsgDismissed(oldMessage);
}
showNotification(msg);
- } catch (JSONException e) {
+ } catch (Exception e) {
e.printStackTrace();
}
return super.onStartCommand(intent, flags, startId);
@@ -58,16 +55,8 @@ private void showNotification(UMessage msg) {
}
Notification.Builder builder;
if (Build.VERSION.SDK_INT >= 26) {
- if (!UmengMessageHandler.isChannelSet) {
- UmengMessageHandler.isChannelSet = true;
- NotificationChannel chan = new NotificationChannel(UmengMessageHandler.PRIMARY_CHANNEL,
- PushAgent.getInstance(this).getNotificationChannelName(),
- NotificationManager.IMPORTANCE_DEFAULT);
- if (manager != null) {
- manager.createNotificationChannel(chan);
- }
- }
- builder = new Notification.Builder(this, UmengMessageHandler.PRIMARY_CHANNEL);
+ NotificationChannel channel = UPushNotificationChannel.getDefaultMode(this);
+ builder = new Notification.Builder(this, channel.getId());
} else {
builder = new Notification.Builder(this);
}
@@ -83,6 +72,7 @@ private void showNotification(UMessage msg) {
notification.deleteIntent = dismissPendingIntent;
notification.contentIntent = clickPendingIntent;
manager.notify(id, notification);
+ UTrack.getInstance().trackMsgShow(msg, notification);
}
public PendingIntent getClickPendingIntent(Context context, UMessage msg) {
diff --git a/app/src/main/java/com/umeng/soexample/push/NotificationBroadcast.java b/app/src/main/java/com/umeng/soexample/push/NotificationBroadcast.java
index 594a7c3..de45534 100644
--- a/app/src/main/java/com/umeng/soexample/push/NotificationBroadcast.java
+++ b/app/src/main/java/com/umeng/soexample/push/NotificationBroadcast.java
@@ -6,7 +6,6 @@
import android.util.Log;
import com.umeng.message.UTrack;
import com.umeng.message.entity.UMessage;
-import org.json.JSONException;
import org.json.JSONObject;
public class NotificationBroadcast extends BroadcastReceiver {
@@ -28,19 +27,15 @@ public void onReceive(Context context, Intent intent) {
switch (action) {
case ACTION_DISMISS:
Log.i(TAG, "dismiss notification");
- UTrack.getInstance(context).setClearPrevMessage(true);
- UTrack.getInstance(context).trackMsgDismissed(msg);
+ UTrack.getInstance().trackMsgDismissed(msg);
break;
case ACTION_CLICK:
Log.i(TAG, "click notification");
- UTrack.getInstance(context).setClearPrevMessage(true);
MyNotificationService.oldMessage = null;
- UTrack.getInstance(context).trackMsgClick(msg);
+ UTrack.getInstance().trackMsgClick(msg);
break;
}
//
- } catch (JSONException e) {
- e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/app/src/main/java/com/umeng/soexample/push/SplashTestActivity.java b/app/src/main/java/com/umeng/soexample/push/SplashTestActivity.java
index db84a07..09d0657 100644
--- a/app/src/main/java/com/umeng/soexample/push/SplashTestActivity.java
+++ b/app/src/main/java/com/umeng/soexample/push/SplashTestActivity.java
@@ -1,16 +1,111 @@
package com.umeng.soexample.push;
+import android.annotation.SuppressLint;
+import android.app.Dialog;
+import android.content.Intent;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.Window;
+import android.widget.TextView;
+
+import com.tencent.tauth.Tencent;
+import com.umeng.commonsdk.UMConfigure;
+import com.umeng.message.PushAgent;
import com.umeng.message.inapp.InAppMessageManager;
import com.umeng.message.inapp.UmengSplashMessageActivity;
+import com.umeng.soexample.HomeActivity;
+import com.umeng.soexample.R;
+import com.umeng.soexample.UmInitConfig;
+import com.umeng.soexample.share.SharePlatformActivity;
+import com.umeng.soexample.sp.SharedPreferencesHelper;
public class SplashTestActivity extends UmengSplashMessageActivity {
+ View inflate;
+ Dialog dialog;
+ SharedPreferencesHelper sharedPreferencesHelper;
@Override
public boolean onCustomPretreatment() {
- InAppMessageManager mInAppMessageManager = InAppMessageManager.getInstance(this);
- mInAppMessageManager.setInAppMsgDebugMode(true);
- mInAppMessageManager.setMainActivityPath("com.umeng.soexample.HomeActivity");
- return super.onCustomPretreatment();
+
+ sharedPreferencesHelper = new SharedPreferencesHelper(this, "umeng");
+
+ /*** sp中uminit为1已经同意隐私协议*/
+ if (sharedPreferencesHelper.getSharedPreference("uminit", "").equals("1")) {
+
+
+ /***
+ * 此时初始化在appcation中进行,这里不做任何友盟初始化操作,直接跳转activity
+ *
+ */
+ //推送全屏消息设置(非初始化操作,这是推送全屏消息设置)
+ InAppMessageManager mInAppMessageManager = InAppMessageManager.getInstance(SplashTestActivity.this);
+ mInAppMessageManager.setInAppMsgDebugMode(true);
+ //跳转homeactivity
+ mInAppMessageManager.setMainActivityPath("com.umeng.soexample.HomeActivity");
+
+ //推送平台多维度推送决策必须调用方法(需要同意隐私协议之后初始化完成调用)
+ PushAgent.getInstance(this).onAppStart();
+ return super.onCustomPretreatment();
+ } else {
+ /*** 隐私协议授权弹窗*/
+ dialog();
+
+ return true;
+ }
+
+
+ }
+
+
+ @SuppressLint("ResourceType")
+ public void dialog() {
+ dialog = new Dialog(this, R.style.dialog);
+ inflate = LayoutInflater.from(SplashTestActivity.this).inflate(R.layout.diaologlayout, null);
+ TextView succsebtn = (TextView) inflate.findViewById(R.id.succsebtn);
+ TextView canclebtn = (TextView) inflate.findViewById(R.id.caclebtn);
+
+ succsebtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ /*** uminit为1时代表已经同意隐私协议,sp记录当前状态*/
+ sharedPreferencesHelper.put("uminit", "1");
+ UMConfigure.submitPolicyGrantResult(getApplicationContext(), true);
+ /*** 友盟sdk正式初始化*/
+ UmInitConfig umInitConfig = new UmInitConfig();
+ umInitConfig.UMinit(getApplicationContext());
+ //QQ官方sdk授权
+ Tencent.setIsPermissionGranted(true);
+ //推送平台多维度推送决策必须调用方法(需要同意隐私协议之后初始化完成调用)
+ PushAgent.getInstance(SplashTestActivity.this).onAppStart();
+ //关闭弹窗
+ dialog.dismiss();
+
+ //跳转到HomeActivity
+ Intent intent = new Intent(SplashTestActivity.this, HomeActivity.class);
+ startActivity(intent);
+ finish();
+
+ }
+ });
+
+ canclebtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ dialog.dismiss();
+ //不同意隐私协议,退出app
+ UMConfigure.submitPolicyGrantResult(getApplicationContext(), false);
+ android.os.Process.killProcess(android.os.Process.myPid());
+
+ }
+ });
+
+ dialog.setContentView(inflate);
+ Window dialogWindow = dialog.getWindow();
+ dialogWindow.setGravity(Gravity.CENTER);
+
+ dialog.setCancelable(false);
+ dialog.show();
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/umeng/soexample/push/UmengNotificationService.java b/app/src/main/java/com/umeng/soexample/push/UmengNotificationService.java
index e5a8a0f..2a863fc 100644
--- a/app/src/main/java/com/umeng/soexample/push/UmengNotificationService.java
+++ b/app/src/main/java/com/umeng/soexample/push/UmengNotificationService.java
@@ -9,11 +9,15 @@
public class UmengNotificationService extends UmengMessageService {
@Override
public void onMessage(Context context, Intent intent) {
- Log.i("UmengNotificationService", "onMessage");
- String message = intent.getStringExtra(AgooConstants.MESSAGE_BODY);
- Intent intent1 = new Intent();
- intent1.setClass(context, MyNotificationService.class);
- intent1.putExtra("UmengMsg", message);
- context.startService(intent1);
+ Log.i("UMNotificationService", "onMessage");
+ try {
+ String message = intent.getStringExtra(AgooConstants.MESSAGE_BODY);
+ Intent intent1 = new Intent();
+ intent1.setClass(context, MyNotificationService.class);
+ intent1.putExtra("UmengMsg", message);
+ context.startService(intent1);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
}
diff --git a/app/src/main/java/com/umeng/soexample/push/UpushActivity.java b/app/src/main/java/com/umeng/soexample/push/UpushActivity.java
index fc32163..2745053 100644
--- a/app/src/main/java/com/umeng/soexample/push/UpushActivity.java
+++ b/app/src/main/java/com/umeng/soexample/push/UpushActivity.java
@@ -1,41 +1,39 @@
package com.umeng.soexample.push;
-import java.util.Hashtable;
-import java.util.List;
-
+import android.app.AppOpsManager;
+import android.app.NotificationManager;
import android.content.Context;
import android.content.SharedPreferences;
+import android.content.pm.ApplicationInfo;
+import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.text.TextUtils;
-import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
+
+import com.umeng.commonsdk.utils.UMUtils;
import com.umeng.message.PushAgent;
-import com.umeng.message.UTrack;
-import com.umeng.message.common.UmengMessageDeviceConfig;
+import com.umeng.message.api.UPushAliasCallback;
+import com.umeng.message.api.UPushTagCallback;
import com.umeng.message.common.inter.ITagManager;
import com.umeng.message.common.inter.ITagManager.Result;
-import com.umeng.message.inapp.IUmengInAppMsgCloseCallback;
-import com.umeng.message.inapp.InAppMessageManager;
-import com.umeng.message.tag.TagManager;
-import com.umeng.message.tag.TagManager.TCallBack;
-import com.umeng.message.tag.TagManager.WeightedTagListCallBack;
import com.umeng.soexample.BaseActivity;
import com.umeng.soexample.R;
import com.umeng.soexample.push.notification.DebugNotification;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.util.List;
+
public class UpushActivity extends BaseActivity implements View.OnClickListener {
private static final String TAG = UpushActivity.class.getName();
private static final String TAG_REMAIN = "tag_remain";
- private static final String WEIGHTED_TAG_REMAIN = "weighted_tag_remain";
private EditText inputTag;
- private EditText inputWeightedTag;
- private EditText inputWeightedTagValue;
private EditText inputAlias;
private EditText inputAliasType;
@@ -66,17 +64,12 @@ protected void onCreate(Bundle savedInstanceState) {
private void initClickListener() {
inputTag = findViewById(R.id.etx_input_tag);
- inputWeightedTag = findViewById(R.id.etx_input_weighted_tag);
- inputWeightedTagValue = findViewById(R.id.etx_input_weighted_tag_value);
inputAlias = findViewById(R.id.etx_input_alias);
inputAliasType = findViewById(R.id.etx_input_alias_type);
tagRemain = findViewById(R.id.tv_tag_remain);
findViewById(R.id.btn_add_tag).setOnClickListener(this);
findViewById(R.id.btn_delete_tag).setOnClickListener(this);
findViewById(R.id.btn_show_tag).setOnClickListener(this);
- findViewById(R.id.btn_add_weighted_tag).setOnClickListener(this);
- findViewById(R.id.btn_delete_weighted_tag).setOnClickListener(this);
- findViewById(R.id.btn_show_weighted_tag).setOnClickListener(this);
findViewById(R.id.btn_add_alias).setOnClickListener(this);
findViewById(R.id.btn_delete_alias).setOnClickListener(this);
findViewById(R.id.btn_show_card_message).setOnClickListener(this);
@@ -91,44 +84,25 @@ public int getLayout() {
@Override
public void onClick(View view) {
- switch (view.getId()) {
- case R.id.btn_add_tag:
- addTag();
- break;
- case R.id.btn_delete_tag:
- deleteTag();
- break;
- case R.id.btn_show_tag:
- showTag();
- break;
- case R.id.btn_add_weighted_tag:
- addWeightedTag();
- break;
- case R.id.btn_delete_weighted_tag:
- deleteWeightedTag();
- break;
- case R.id.btn_show_weighted_tag:
- showWeightedTag();
- break;
- case R.id.btn_add_alias:
- addAlias();
- break;
- case R.id.btn_delete_alias:
- deleteAlias();
- break;
- case R.id.btn_set_alias:
- setAlias();
- break;
- case R.id.btn_show_card_message:
-// showCardMessage();
- break;
- case R.id.btn_serialnet:
- serialnet();
- break;
- case R.id.btn_device_check:
- deviceCheck();
- break;
- default:
+ int id = view.getId();
+ if (id == R.id.btn_add_tag) {
+ addTag();
+ } else if (id == R.id.btn_delete_tag) {
+ deleteTag();
+ } else if (id == R.id.btn_show_tag) {
+ showTag();
+ } else if (id == R.id.btn_add_alias) {
+ addAlias();
+ } else if (id == R.id.btn_delete_alias) {
+ deleteAlias();
+ } else if (id == R.id.btn_set_alias) {
+ setAlias();
+ } else if (id == R.id.btn_show_card_message) {
+// showCardMessage();
+ } else if (id == R.id.btn_serialnet) {
+ serialnet();
+ } else if (id == R.id.btn_device_check) {
+ deviceCheck();
}
}
@@ -143,7 +117,7 @@ private void setAlias() {
Toast.makeText(this, "请输入alias type", Toast.LENGTH_SHORT).show();
return;
}
- mPushAgent.setAlias(alias, aliasType, new UTrack.ICallBack() {
+ mPushAgent.setAlias(alias, aliasType, new UPushAliasCallback() {
@Override
public void onMessage(boolean isSuccess, String message) {
handler.post(new Runnable() {
@@ -168,7 +142,7 @@ private void deleteAlias() {
Toast.makeText(this, "请输入alias type", Toast.LENGTH_SHORT).show();
return;
}
- mPushAgent.deleteAlias(alias, aliasType, new UTrack.ICallBack() {
+ mPushAgent.deleteAlias(alias, aliasType, new UPushAliasCallback() {
@Override
public void onMessage(boolean isSuccess, String message) {
handler.post(new Runnable() {
@@ -193,7 +167,7 @@ private void addAlias() {
Toast.makeText(this, "请先输入alias type", Toast.LENGTH_SHORT).show();
return;
}
- mPushAgent.addAlias(alias, aliasType, new UTrack.ICallBack() {
+ mPushAgent.addAlias(alias, aliasType, new UPushAliasCallback() {
@Override
public void onMessage(boolean isSuccess, String message) {
handler.post(new Runnable() {
@@ -207,97 +181,8 @@ public void run() {
});
}
- private void showWeightedTag() {
- mPushAgent.getTagManager().getWeightedTags(new WeightedTagListCallBack() {
- @Override
- public void onMessage(final boolean isSuccess, final Hashtable result) {
- handler.post(new Runnable() {
- @Override
- public void run() {
- if (isSuccess) {
- StringBuilder builder = new StringBuilder();
- for (String key : result.keySet()) {
- int value = result.get(key);
- builder.append(getString(R.string.push_tag));
- builder.append(key);
- builder.append(" ");
- builder.append(getString(R.string.push_tag_value));
- builder.append(value);
- builder.append("\n");
- }
- PushDialogFragment.newInstance(1, 1, getString(R.string.push_get_tags),
- builder.toString()).show(getFragmentManager(), "deleshowWeightedTagteTag");
- } else {
- PushDialogFragment.newInstance(1, 0, getString(R.string.push_get_tags),
- "").show(getFragmentManager(), "showWeightedTag");
- }
- }
- });
- }
- });
- }
-
- private void deleteWeightedTag() {
- mPushAgent.getTagManager().deleteWeightedTags(new TCallBack() {
- @Override
- public void onMessage(final boolean isSuccess, final Result result) {
- handler.post(new Runnable() {
- @Override
- public void run() {
- if (isSuccess) {
- sharedPref.edit().putInt(WEIGHTED_TAG_REMAIN, result.remain).apply();
- PushDialogFragment.newInstance(0, 1, getString(R.string.push_delete_success),
- inputWeightedTag.getText().toString()).show(getFragmentManager(), "deleteWeightedTag");
- inputWeightedTag.setText("");
- inputWeightedTagValue.setText("");
- } else {
- PushDialogFragment.newInstance(0, 0, getString(R.string.push_delete_fail),
- inputWeightedTag.getText().toString()).show(getFragmentManager(), "deleteWeightedTag");
- }
- }
- });
- }
- }, inputWeightedTag.getText().toString());
- }
-
- private void addWeightedTag() {
- if (TextUtils.isEmpty(inputWeightedTag.getText())) {
- Toast.makeText(this, "请输入weighted tag", Toast.LENGTH_SHORT).show();
- return;
- }
- if (TextUtils.isEmpty(inputWeightedTagValue.getText())) {
- Toast.makeText(this, "请输入value", Toast.LENGTH_SHORT).show();
- return;
- }
- final Hashtable table = new Hashtable();
- table.put(inputWeightedTag.getText().toString(), Integer.valueOf(inputWeightedTagValue.getText().toString()));
- mPushAgent.getTagManager().addWeightedTags(new TCallBack() {
- @Override
- public void onMessage(final boolean isSuccess, final Result result) {
- handler.post(new Runnable() {
- @Override
- public void run() {
- if (isSuccess) {
- sharedPref.edit().putInt(WEIGHTED_TAG_REMAIN, result.remain).apply();
- PushDialogFragment.newInstance(0, 1, getString(R.string.push_add_success),
- inputWeightedTag.getText().toString() + "\n" + getString(R.string.push_tag_value) +
- inputWeightedTagValue.getText().toString()).show(getFragmentManager(),
- "addWeightedTag");
- inputWeightedTag.setText("");
- inputWeightedTagValue.setText("");
- } else {
- PushDialogFragment.newInstance(0, 0, getString(R.string.push_add_fail),
- inputWeightedTag.getText().toString() + "\n" + getString(R.string.push_tag_value) + inputWeightedTagValue.getText()
- .toString()).show(getFragmentManager(), "addWeightedTag");
- }
- }
- });
- }
- }, table);
- }
-
private void showTag() {
- mPushAgent.getTagManager().getTags(new TagManager.TagListCallBack() {
+ mPushAgent.getTagManager().getTags(new UPushTagCallback>() {
@Override
public void onMessage(final boolean isSuccess, final List result) {
handler.post(new Runnable() {
@@ -315,10 +200,10 @@ public void run() {
}
}
PushDialogFragment.newInstance(1, 1, getString(R.string.push_get_tags),
- info.toString()).show(getFragmentManager(), "deleteTag");
+ info.toString()).show(getFragmentManager(), "deleteTag");
} else {
PushDialogFragment.newInstance(1, 0, getString(R.string.push_get_tags),
- "").show(getFragmentManager(), "deleteTag");
+ "").show(getFragmentManager(), "deleteTag");
}
}
});
@@ -332,7 +217,7 @@ private void deleteTag() {
Toast.makeText(this, "请先输入tag", Toast.LENGTH_SHORT).show();
return;
}
- mPushAgent.getTagManager().deleteTags(new TagManager.TCallBack() {
+ mPushAgent.getTagManager().deleteTags(new UPushTagCallback() {
@Override
public void onMessage(final boolean isSuccess, final ITagManager.Result result) {
handler.post(new Runnable() {
@@ -343,10 +228,10 @@ public void run() {
sharedPref.edit().putInt(TAG_REMAIN, result.remain).apply();
tagRemain.setText(String.valueOf(result.remain));
PushDialogFragment.newInstance(0, 1,
- getString(R.string.push_delete_success), tag).show(getFragmentManager(), "deleteTag");
+ getString(R.string.push_delete_success), tag).show(getFragmentManager(), "deleteTag");
} else {
PushDialogFragment.newInstance(0, 0,
- getString(R.string.push_delete_fail), tag).show(getFragmentManager(), "deleteTag");
+ getString(R.string.push_delete_fail), tag).show(getFragmentManager(), "deleteTag");
}
}
});
@@ -360,7 +245,7 @@ private void addTag() {
Toast.makeText(this, "请先输入tag", Toast.LENGTH_SHORT).show();
return;
}
- mPushAgent.getTagManager().addTags(new TagManager.TCallBack() {
+ mPushAgent.getTagManager().addTags(new UPushTagCallback() {
@Override
public void onMessage(final boolean isSuccess, final ITagManager.Result result) {
handler.post(new Runnable() {
@@ -371,10 +256,10 @@ public void run() {
sharedPref.edit().putInt(TAG_REMAIN, result.remain).apply();
tagRemain.setText(String.valueOf(result.remain));
PushDialogFragment.newInstance(0, 1, getString(R.string.push_add_success), tag).show(
- getFragmentManager(), "addTag");
+ getFragmentManager(), "addTag");
} else {
PushDialogFragment.newInstance(0, 0, getString(R.string.push_add_fail), tag).show(
- getFragmentManager(), "addTag");
+ getFragmentManager(), "addTag");
}
}
});
@@ -392,11 +277,11 @@ public void run() {
// }
private void serialnet() {
- DebugNotification.transmission(UpushActivity.this, handler);
+ DebugNotification.transmission(UpushActivity.this);
}
private void deviceCheck() {
- String push_switch = UmengMessageDeviceConfig.isNotificationEnabled(this);
+ String push_switch = getNotificationSwitch(this);
String status;
switch (push_switch) {
case "true":
@@ -409,11 +294,41 @@ private void deviceCheck() {
status = push_switch;
break;
}
- String cpu = UmengMessageDeviceConfig.getCPU();
+ String cpu = UMUtils.getCPU();
String osVersion = android.os.Build.VERSION.RELEASE;
String info = getString(R.string.push_os_version) + osVersion + "\n" + getString(R.string.push_cpu_info) + cpu
- + "\n" + getString(R.string.push_system_notification_switch) + status;
+ + "\n" + getString(R.string.push_system_notification_switch) + status;
PushDialogFragment.newInstance(1, 0, getString(
- R.string.push_device_check), info).show(getFragmentManager(), "deviceCheck");
+ R.string.push_device_check), info).show(getFragmentManager(), "deviceCheck");
+ }
+
+
+ public static String getNotificationSwitch(Context context) {
+ String result = "unknown";
+ if (Build.VERSION.SDK_INT >= 24) {
+ try {
+ result = String.valueOf(((NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE)).areNotificationsEnabled());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ } else if (Build.VERSION.SDK_INT >= 19) {
+ try {
+ AppOpsManager opsManager = (AppOpsManager)context.getSystemService(Context.APP_OPS_SERVICE);
+ ApplicationInfo applicationInfo = context.getApplicationInfo();
+ String packageName = context.getApplicationContext().getPackageName();
+ int uid = applicationInfo.uid;
+ Class> clazz = Class.forName(AppOpsManager.class.getName());
+ Method method = clazz.getMethod("checkOpNoThrow", Integer.TYPE, Integer.TYPE, String.class);
+ Field field = clazz.getDeclaredField("OP_POST_NOTIFICATION");
+ Integer op = (Integer) field.get(opsManager);
+ if (op != null) {
+ Integer ret = (Integer) method.invoke(opsManager, op, uid, packageName);
+ result = String.valueOf(ret != null && ret == AppOpsManager.MODE_ALLOWED);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ return result;
}
}
diff --git a/app/src/main/java/com/umeng/soexample/push/notification/DebugNotification.java b/app/src/main/java/com/umeng/soexample/push/notification/DebugNotification.java
index 2669f8d..2b817b1 100644
--- a/app/src/main/java/com/umeng/soexample/push/notification/DebugNotification.java
+++ b/app/src/main/java/com/umeng/soexample/push/notification/DebugNotification.java
@@ -1,12 +1,20 @@
package com.umeng.soexample.push.notification;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
import java.security.MessageDigest;
import android.content.Context;
import android.os.Handler;
+import android.os.Looper;
import android.widget.Toast;
-import com.umeng.message.MessageSharedPrefs;
-import com.umeng.message.util.HttpRequest;
+
+import com.umeng.commonsdk.service.UMGlobalContext;
+import com.umeng.message.PushAgent;
+
import org.json.JSONObject;
public class DebugNotification {
@@ -16,11 +24,11 @@ public class DebugNotification {
*
* @param mContext
*/
- public static void transmission(final Context mContext, final Handler handler) {
+ public static void transmission(final Context mContext) {
try {
final AndroidUnicast unicast = new AndroidUnicast("59892f08310c9307b60023d0",
"xkqdlqwgkglgfdydyawb16etxilvmy3g");
- unicast.setDeviceToken(MessageSharedPrefs.getInstance(mContext).getDeviceToken());
+ unicast.setDeviceToken(PushAgent.getInstance(mContext).getRegistrationId());
unicast.setTicker("Android unicast ticker");
unicast.setTitle("Title");
unicast.setText("Demo透传测试");
@@ -32,7 +40,7 @@ public static void transmission(final Context mContext, final Handler handler) {
@Override
public void run() {
try {
- send(unicast, mContext, handler);
+ send(unicast);
} catch (Exception e) {
e.printStackTrace();
}
@@ -43,8 +51,8 @@ public void run() {
}
}
- public static void send(UmengNotification msg, final Context mContext, Handler handler) throws Exception {
- String timestamp = Integer.toString((int)(System.currentTimeMillis() / 1000));
+ public static void send(UmengNotification msg) throws Exception {
+ String timestamp = Integer.toString((int) (System.currentTimeMillis() / 1000));
msg.setPredefinedKeyValue("timestamp", timestamp);
String url = "http://msg.umeng.com/api/send";
@@ -54,27 +62,48 @@ public static void send(UmengNotification msg, final Context mContext, Handler h
String sign = md5(p_sign);
url = url + "?sign=" + sign;
- String response = HttpRequest.post(url).acceptJson()
- .send(postBody).body("UTF-8");
- JSONObject responseJson = new JSONObject(response);
- String ret = responseJson.getString("ret");
+ HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
+ connection.setRequestMethod("POST");
+ connection.setConnectTimeout(15000);
+ connection.setReadTimeout(15000);
+ connection.setRequestProperty("Accept", "application/json");
+ connection.setDoOutput(true);
+ OutputStream outputStream = connection.getOutputStream();
+ outputStream.write(postBody.getBytes());
+ outputStream.close();
+
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ InputStream inputStream = connection.getInputStream();
+ if (inputStream != null) {
+ byte[] buffer = new byte[8 * 1024];
+ int len;
+ while ((len = inputStream.read(buffer)) != -1) {
+ out.write(buffer, 0, len);
+ }
+ inputStream.close();
+ }
+ connection.disconnect();
+
+ JSONObject responseJson = new JSONObject(out.toString());
+ String ret = responseJson.getString("ret");
+ Runnable runnable;
if (!ret.equalsIgnoreCase("SUCCESS")) {
- handler.post(new Runnable() {
+ runnable = new Runnable() {
@Override
public void run() {
- Toast.makeText(mContext, "透传发送失败", Toast.LENGTH_LONG).show();
+ Toast.makeText(UMGlobalContext.getAppContext(), "发送失败", Toast.LENGTH_LONG).show();
}
- });
+ };
} else {
- handler.post(new Runnable() {
+ runnable = new Runnable() {
@Override
public void run() {
- Toast.makeText(mContext, "透传发送成功", Toast.LENGTH_LONG).show();
+ Toast.makeText(UMGlobalContext.getAppContext(), "发送成功", Toast.LENGTH_LONG).show();
}
- });
+ };
}
-
+ new Handler(Looper.getMainLooper()).post(runnable);
}
public static String md5(String string) {
diff --git a/app/src/main/java/com/umeng/soexample/share/AuthActivity.java b/app/src/main/java/com/umeng/soexample/share/AuthActivity.java
index e4b89b7..20e10d8 100644
--- a/app/src/main/java/com/umeng/soexample/share/AuthActivity.java
+++ b/app/src/main/java/com/umeng/soexample/share/AuthActivity.java
@@ -22,8 +22,8 @@ public class AuthActivity extends BaseActivity {
private AuthAdapter shareAdapter;
public ArrayList platforms = new ArrayList();
private SHARE_MEDIA[] list = {SHARE_MEDIA.QQ, SHARE_MEDIA.SINA, SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WXWORK,
- SHARE_MEDIA.FACEBOOK, SHARE_MEDIA.TWITTER, SHARE_MEDIA.LINKEDIN, SHARE_MEDIA.DOUBAN, SHARE_MEDIA.RENREN, SHARE_MEDIA.KAKAO,
- SHARE_MEDIA.VKONTAKTE, SHARE_MEDIA.DROPBOX};
+ SHARE_MEDIA.FACEBOOK, SHARE_MEDIA.TWITTER, SHARE_MEDIA.LINKEDIN, SHARE_MEDIA.DOUBAN, SHARE_MEDIA.KAKAO,
+ SHARE_MEDIA.VKONTAKTE, SHARE_MEDIA.DROPBOX,SHARE_MEDIA.BYTEDANCE, SHARE_MEDIA.HONOR};
private ProgressDialog dialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
diff --git a/app/src/main/java/com/umeng/soexample/share/InfoActivity.java b/app/src/main/java/com/umeng/soexample/share/InfoActivity.java
index e79c53e..fc6ed01 100644
--- a/app/src/main/java/com/umeng/soexample/share/InfoActivity.java
+++ b/app/src/main/java/com/umeng/soexample/share/InfoActivity.java
@@ -24,7 +24,7 @@ public class InfoActivity extends BaseActivity {
private LinearLayout container;
public ArrayList platforms = new ArrayList();
private SHARE_MEDIA[] list = {SHARE_MEDIA.QQ,SHARE_MEDIA.SINA,SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WXWORK,
- SHARE_MEDIA.FACEBOOK,SHARE_MEDIA.LINKEDIN,SHARE_MEDIA.KAKAO,SHARE_MEDIA.VKONTAKTE,SHARE_MEDIA.DROPBOX};
+ SHARE_MEDIA.FACEBOOK,SHARE_MEDIA.LINKEDIN,SHARE_MEDIA.KAKAO,SHARE_MEDIA.VKONTAKTE,SHARE_MEDIA.DROPBOX,SHARE_MEDIA.BYTEDANCE, SHARE_MEDIA.HONOR};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
diff --git a/app/src/main/java/com/umeng/soexample/share/InfoDetailActivity.java b/app/src/main/java/com/umeng/soexample/share/InfoDetailActivity.java
index ff1ed74..f4e41c3 100644
--- a/app/src/main/java/com/umeng/soexample/share/InfoDetailActivity.java
+++ b/app/src/main/java/com/umeng/soexample/share/InfoDetailActivity.java
@@ -12,6 +12,8 @@
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.bean.SHARE_MEDIA;
+import com.umeng.socialize.handler.UMDYUtils;
+import com.umeng.socialize.handler.UMHonorUtils;
import com.umeng.soexample.BaseActivity;
import com.umeng.soexample.R;
@@ -40,13 +42,31 @@ public void onStart(SHARE_MEDIA share_media) {
}
@Override
- public void onComplete(SHARE_MEDIA share_media, int i, Map map) {
- Log.e("dasdasfasf",map+"");
- StringBuilder sb = new StringBuilder();
- for (String key : map.keySet()) {
- sb.append(key).append(" : ").append(map.get(key)).append("\n");
+ public void onComplete(SHARE_MEDIA platform, int action, Map data) {
+ Log.e("InfoDetailActivity",data+"");
+ StringBuilder temp = new StringBuilder();
+ for (String key : data.keySet()) {
+ String v = data.get(key);
+ if (platform == SHARE_MEDIA.BYTEDANCE) {
+ if ("encrypt_mobile".equals(key)) {
+ try {
+ v = UMDYUtils.decryptMobileNumber(v);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ } else if (platform == SHARE_MEDIA.HONOR) {
+ if ("mobileNumber".equals(key)) {
+ try {
+ v = UMHonorUtils.decryptMobileNumber(v);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ temp.append(key).append(" : ").append(v).append("\n");
}
- result.setText(sb.toString());
+ result.setText(temp.toString());
}
@Override
diff --git a/app/src/main/java/com/umeng/soexample/share/SettingActivity.java b/app/src/main/java/com/umeng/soexample/share/SettingActivity.java
index f23d114..50bcc04 100644
--- a/app/src/main/java/com/umeng/soexample/share/SettingActivity.java
+++ b/app/src/main/java/com/umeng/soexample/share/SettingActivity.java
@@ -22,6 +22,7 @@
import com.umeng.soexample.R;
import com.umeng.soexample.share.utils.StyleUtil;
+
/**
* Created by wangfei on 2018/1/24.
*/
@@ -43,6 +44,8 @@ protected void onCreate(Bundle savedInstanceState) {
netContainer = (RelativeLayout)findViewById(R.id.net_container);
btnGroup = (RelativeLayout)findViewById(R.id.btnContainer);
sendBtn=findViewById(R.id.send);
+
+
cancelBtn=findViewById(R.id.cancel);
cancelBtn.setOnClickListener(new OnClickListener() {
@Override
@@ -96,6 +99,7 @@ public void onClick(View view) {
Toast.makeText(SettingActivity.this,"参数不完整",Toast.LENGTH_LONG).show();
}
+
}
});
diff --git a/app/src/main/java/com/umeng/soexample/share/ShareBoardActivity.java b/app/src/main/java/com/umeng/soexample/share/ShareBoardActivity.java
index 72d9ade..d5fea65 100644
--- a/app/src/main/java/com/umeng/soexample/share/ShareBoardActivity.java
+++ b/app/src/main/java/com/umeng/soexample/share/ShareBoardActivity.java
@@ -44,12 +44,11 @@ protected void onCreate(Bundle savedInstanceState) {
SHARE_MEDIA.WEIXIN, SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.WEIXIN_FAVORITE,
SHARE_MEDIA.WXWORK,
SHARE_MEDIA.SINA, SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE,
- SHARE_MEDIA.ALIPAY, SHARE_MEDIA.RENREN, SHARE_MEDIA.DOUBAN,
+ SHARE_MEDIA.ALIPAY, SHARE_MEDIA.DOUBAN,
SHARE_MEDIA.SMS, SHARE_MEDIA.EMAIL, SHARE_MEDIA.YNOTE,
- SHARE_MEDIA.EVERNOTE, SHARE_MEDIA.LAIWANG, SHARE_MEDIA.LAIWANG_DYNAMIC,
- SHARE_MEDIA.LINKEDIN, SHARE_MEDIA.YIXIN, SHARE_MEDIA.YIXIN_CIRCLE,
- SHARE_MEDIA.TENCENT, SHARE_MEDIA.FACEBOOK, SHARE_MEDIA.TWITTER,
- SHARE_MEDIA.WHATSAPP, SHARE_MEDIA.GOOGLEPLUS, SHARE_MEDIA.LINE,
+ SHARE_MEDIA.EVERNOTE,
+ SHARE_MEDIA.LINKEDIN, SHARE_MEDIA.YIXIN, SHARE_MEDIA.YIXIN_CIRCLE, SHARE_MEDIA.FACEBOOK, SHARE_MEDIA.TWITTER,
+ SHARE_MEDIA.WHATSAPP, SHARE_MEDIA.LINE,
SHARE_MEDIA.INSTAGRAM, SHARE_MEDIA.KAKAO, SHARE_MEDIA.PINTEREST,
SHARE_MEDIA.POCKET, SHARE_MEDIA.TUMBLR, SHARE_MEDIA.FLICKR,
SHARE_MEDIA.FOURSQUARE, SHARE_MEDIA.MORE)
@@ -141,7 +140,6 @@ public void onResult(SHARE_MEDIA platform) {
&& platform != SHARE_MEDIA.PINTEREST
&& platform != SHARE_MEDIA.INSTAGRAM
- && platform != SHARE_MEDIA.GOOGLEPLUS
&& platform != SHARE_MEDIA.YNOTE
&& platform != SHARE_MEDIA.EVERNOTE) {
Toast.makeText(mActivity.get(), platform + " 分享成功啦", Toast.LENGTH_SHORT).show();
@@ -161,7 +159,6 @@ public void onError(SHARE_MEDIA platform, Throwable t) {
&& platform != SHARE_MEDIA.PINTEREST
&& platform != SHARE_MEDIA.INSTAGRAM
- && platform != SHARE_MEDIA.GOOGLEPLUS
&& platform != SHARE_MEDIA.YNOTE
&& platform != SHARE_MEDIA.EVERNOTE) {
Toast.makeText(mActivity.get(), platform + " 分享失败啦", Toast.LENGTH_SHORT).show();
diff --git a/app/src/main/java/com/umeng/soexample/share/SharePlatformActivity.java b/app/src/main/java/com/umeng/soexample/share/SharePlatformActivity.java
index b2f4b2e..85f92ff 100644
--- a/app/src/main/java/com/umeng/soexample/share/SharePlatformActivity.java
+++ b/app/src/main/java/com/umeng/soexample/share/SharePlatformActivity.java
@@ -69,24 +69,19 @@ private void initPlatforms(){
platforms.add(SHARE_MEDIA.QZONE.toSnsPlatform());
platforms.add(SHARE_MEDIA.ALIPAY.toSnsPlatform());
platforms.add(SHARE_MEDIA.DINGTALK.toSnsPlatform());
- platforms.add(SHARE_MEDIA.RENREN.toSnsPlatform());
platforms.add(SHARE_MEDIA.DOUBAN.toSnsPlatform());
platforms.add(SHARE_MEDIA.SMS.toSnsPlatform());
platforms.add(SHARE_MEDIA.EMAIL.toSnsPlatform());
platforms.add(SHARE_MEDIA.YNOTE.toSnsPlatform());
platforms.add(SHARE_MEDIA.EVERNOTE.toSnsPlatform());
- platforms.add(SHARE_MEDIA.LAIWANG.toSnsPlatform());
- platforms.add(SHARE_MEDIA.LAIWANG_DYNAMIC.toSnsPlatform());
platforms.add(SHARE_MEDIA.LINKEDIN.toSnsPlatform());
platforms.add(SHARE_MEDIA.YIXIN.toSnsPlatform());
platforms.add(SHARE_MEDIA.YIXIN_CIRCLE.toSnsPlatform());
- platforms.add(SHARE_MEDIA.TENCENT.toSnsPlatform());
platforms.add(SHARE_MEDIA.FACEBOOK.toSnsPlatform());
platforms.add(SHARE_MEDIA.FACEBOOK_MESSAGER.toSnsPlatform());
platforms.add(SHARE_MEDIA.VKONTAKTE.toSnsPlatform());
platforms.add(SHARE_MEDIA.TWITTER.toSnsPlatform());
platforms.add(SHARE_MEDIA.WHATSAPP.toSnsPlatform());
- platforms.add(SHARE_MEDIA.GOOGLEPLUS.toSnsPlatform());
platforms.add(SHARE_MEDIA.LINE.toSnsPlatform());
platforms.add(SHARE_MEDIA.INSTAGRAM.toSnsPlatform());
platforms.add(SHARE_MEDIA.KAKAO.toSnsPlatform());
@@ -96,6 +91,9 @@ private void initPlatforms(){
platforms.add(SHARE_MEDIA.FLICKR.toSnsPlatform());
platforms.add(SHARE_MEDIA.FOURSQUARE.toSnsPlatform());
platforms.add(SHARE_MEDIA.DROPBOX.toSnsPlatform());
+ platforms.add(SHARE_MEDIA.BYTEDANCE.toSnsPlatform());
+ platforms.add(SHARE_MEDIA.BYTEDANCE_PUBLISH.toSnsPlatform());
+ platforms.add(SHARE_MEDIA.BYTEDANCE_FRIENDS.toSnsPlatform());
platforms.add(SHARE_MEDIA.MORE.toSnsPlatform());
}
diff --git a/app/src/main/java/com/umeng/soexample/share/utils/StyleUtil.java b/app/src/main/java/com/umeng/soexample/share/utils/StyleUtil.java
index 53a37f3..2a0cea1 100644
--- a/app/src/main/java/com/umeng/soexample/share/utils/StyleUtil.java
+++ b/app/src/main/java/com/umeng/soexample/share/utils/StyleUtil.java
@@ -95,13 +95,6 @@ else if (share_media == SHARE_MEDIA.WXWORK) {
styles.add(StyleUtil.WEB11);
styles.add(StyleUtil.LOCALVIDEO);
styles.add(StyleUtil.LOCALFILE);
- } else if (share_media == SHARE_MEDIA.TENCENT){
- styles.add(StyleUtil.TEXT);
- styles.add(StyleUtil.IMAGELOCAL);
- styles.add(StyleUtil.IMAGEURL);
- styles.add(StyleUtil.WEB11);
- styles.add(StyleUtil.MUSIC11);
- styles.add(StyleUtil.VIDEO11);
} else if (share_media == SHARE_MEDIA.DOUBAN){
styles.add(StyleUtil.TEXT);
styles.add(StyleUtil.TEXTANDIMAGE);
@@ -110,14 +103,6 @@ else if (share_media == SHARE_MEDIA.WXWORK) {
styles.add(StyleUtil.WEB11);
styles.add(StyleUtil.MUSIC11);
styles.add(StyleUtil.VIDEO11);
- }else if (share_media == SHARE_MEDIA.RENREN){
- styles.add(StyleUtil.TEXT);
- styles.add(StyleUtil.TEXTANDIMAGE);
- styles.add(StyleUtil.IMAGELOCAL);
- styles.add(StyleUtil.IMAGEURL);
- styles.add(StyleUtil.WEB11);
- styles.add(StyleUtil.MUSIC11);
- styles.add(StyleUtil.VIDEO11);
}else if (share_media == SHARE_MEDIA.ALIPAY){
styles.add(StyleUtil.TEXT);
styles.add(StyleUtil.IMAGELOCAL);
@@ -163,20 +148,6 @@ else if (share_media == SHARE_MEDIA.WXWORK) {
styles.add(StyleUtil.WEB11);
styles.add(StyleUtil.MUSIC11);
styles.add(StyleUtil.VIDEO11);
- }else if (share_media == SHARE_MEDIA.LAIWANG){
-
- // styles.add(StyleUtil.IMAGELOCAL);
- // styles.add(StyleUtil.IMAGEURL);
- styles.add(StyleUtil.WEB11);
- styles.add(StyleUtil.MUSIC11);
- styles.add(StyleUtil.VIDEO11);
- }else if (share_media == SHARE_MEDIA.LAIWANG_DYNAMIC){
- //
- // styles.add(StyleUtil.IMAGELOCAL);
- // styles.add(StyleUtil.IMAGEURL);
- styles.add(StyleUtil.WEB11);
- styles.add(StyleUtil.MUSIC11);
- styles.add(StyleUtil.VIDEO11);
}else if (share_media == SHARE_MEDIA.INSTAGRAM){
styles.add(StyleUtil.IMAGELOCAL);
styles.add(StyleUtil.IMAGEURL);
@@ -203,11 +174,6 @@ else if (share_media == SHARE_MEDIA.WXWORK) {
styles.add(StyleUtil.IMAGELOCAL);
styles.add(StyleUtil.IMAGEURL);
styles.add(StyleUtil.TEXTANDIMAGE);
- }else if (share_media == SHARE_MEDIA.GOOGLEPLUS){
- styles.add(StyleUtil.TEXT);
- styles.add(StyleUtil.IMAGELOCAL);
- styles.add(StyleUtil.IMAGEURL);
- styles.add(StyleUtil.TEXTANDIMAGE);
}else if (share_media == SHARE_MEDIA.EVERNOTE){
styles.add(StyleUtil.TEXT);
styles.add(StyleUtil.IMAGELOCAL);
@@ -256,7 +222,17 @@ else if (share_media == SHARE_MEDIA.WXWORK) {
}else if (share_media == SHARE_MEDIA.DROPBOX) {
styles.add(StyleUtil.IMAGELOCAL);
styles.add(StyleUtil.IMAGEURL);
+ } else if (share_media == SHARE_MEDIA.BYTEDANCE) {
+ styles.add(StyleUtil.IMAGELOCAL);
+ styles.add(StyleUtil.MULIMAGE);
+ styles.add(StyleUtil.IMAGEURL);
+ styles.add(StyleUtil.LOCALVIDEO);
+ } else if (share_media == SHARE_MEDIA.BYTEDANCE_PUBLISH) {
+ styles.add(StyleUtil.LOCALVIDEO);
+ } else if (share_media == SHARE_MEDIA.BYTEDANCE_FRIENDS) {
+ styles.add(StyleUtil.IMAGELOCAL);
+ styles.add(StyleUtil.IMAGEURL);
+ styles.add(StyleUtil.WEB11);
}
-
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/umeng/soexample/share/views/AuthAdapter.java b/app/src/main/java/com/umeng/soexample/share/views/AuthAdapter.java
index 694fe2a..05580ec 100644
--- a/app/src/main/java/com/umeng/soexample/share/views/AuthAdapter.java
+++ b/app/src/main/java/com/umeng/soexample/share/views/AuthAdapter.java
@@ -96,20 +96,35 @@ public void onStart(SHARE_MEDIA platform) {
@Override
public void onComplete(SHARE_MEDIA platform, int action, Map data) {
SocializeUtils.safeCloseDialog(dialog);
- Toast.makeText(mContext, "成功了", Toast.LENGTH_LONG).show();
- notifyDataSetChanged();
+ mActivity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ Toast.makeText(mContext, "成功了", Toast.LENGTH_LONG).show();
+ notifyDataSetChanged();
+ }
+ });
}
@Override
public void onError(SHARE_MEDIA platform, int action, Throwable t) {
SocializeUtils.safeCloseDialog(dialog);
- Toast.makeText(mContext, "失败:" + t.getMessage(), Toast.LENGTH_LONG).show();
+ mActivity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ Toast.makeText(mContext, "失败:" + t.getMessage(), Toast.LENGTH_LONG).show();
+ }
+ });
}
@Override
public void onCancel(SHARE_MEDIA platform, int action) {
SocializeUtils.safeCloseDialog(dialog);
- Toast.makeText(mContext, "取消了", Toast.LENGTH_LONG).show();
+ mActivity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ Toast.makeText(mContext, "取消了", Toast.LENGTH_LONG).show();
+ }
+ });
}
};
}
diff --git a/app/src/main/java/com/umeng/soexample/sp/SharedPreferencesHelper.java b/app/src/main/java/com/umeng/soexample/sp/SharedPreferencesHelper.java
new file mode 100644
index 0000000..9ed0c31
--- /dev/null
+++ b/app/src/main/java/com/umeng/soexample/sp/SharedPreferencesHelper.java
@@ -0,0 +1,89 @@
+package com.umeng.soexample.sp;
+
+import android.content.Context;
+import android.content.SharedPreferences;
+
+import java.util.Map;
+
+public class SharedPreferencesHelper {
+ private SharedPreferences sharedPreferences;
+ /*
+ * 保存手机里面的名字
+ */private SharedPreferences.Editor editor;
+
+ public SharedPreferencesHelper(Context context, String FILE_NAME) {
+ sharedPreferences = context.getSharedPreferences(FILE_NAME,
+ Context.MODE_PRIVATE);
+ editor = sharedPreferences.edit();
+ }
+
+
+ /**
+ * 存储
+ */
+ public void put(String key, Object object) {
+ if (object instanceof String) {
+ editor.putString(key, (String) object);
+ } else if (object instanceof Integer) {
+ editor.putInt(key, (Integer) object);
+ } else if (object instanceof Boolean) {
+ editor.putBoolean(key, (Boolean) object);
+ } else if (object instanceof Float) {
+ editor.putFloat(key, (Float) object);
+ } else if (object instanceof Long) {
+ editor.putLong(key, (Long) object);
+ } else {
+ editor.putString(key, object.toString());
+ }
+ editor.commit();
+ }
+
+ /**
+ * 获取保存的数据
+ */
+ public Object getSharedPreference(String key, Object defaultObject) {
+ if (defaultObject instanceof String) {
+ return sharedPreferences.getString(key, (String) defaultObject);
+ } else if (defaultObject instanceof Integer) {
+ return sharedPreferences.getInt(key, (Integer) defaultObject);
+ } else if (defaultObject instanceof Boolean) {
+ return sharedPreferences.getBoolean(key, (Boolean) defaultObject);
+ } else if (defaultObject instanceof Float) {
+ return sharedPreferences.getFloat(key, (Float) defaultObject);
+ } else if (defaultObject instanceof Long) {
+ return sharedPreferences.getLong(key, (Long) defaultObject);
+ } else {
+ return sharedPreferences.getString(key, null);
+ }
+ }
+
+ /**
+ * 移除某个key值已经对应的值
+ */
+ public void remove(String key) {
+ editor.remove(key);
+ editor.commit();
+ }
+
+ /**
+ * 清除所有数据
+ */
+ public void clear() {
+ editor.clear();
+ editor.commit();
+ }
+
+ /**
+ * 查询某个key是否存在
+ */
+ public Boolean contain(String key) {
+ return sharedPreferences.contains(key);
+ }
+
+ /**
+ * 返回所有的键值对
+ */
+ public Map getAll() {
+ return sharedPreferences.getAll();
+ }
+}
diff --git a/app/src/main/res/layout/activity_upush.xml b/app/src/main/res/layout/activity_upush.xml
index 1be4842..ef87125 100644
--- a/app/src/main/res/layout/activity_upush.xml
+++ b/app/src/main/res/layout/activity_upush.xml
@@ -125,117 +125,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/umeng_custom_card_message.xml b/app/src/main/res/layout/umeng_custom_card_message.xml
new file mode 100644
index 0000000..4ceab97
--- /dev/null
+++ b/app/src/main/res/layout/umeng_custom_card_message.xml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/raw/umeng_push_notification_default_sound.mp3 b/app/src/main/res/raw/umeng_push_notification_default_sound.mp3
new file mode 100644
index 0000000..3b17e28
Binary files /dev/null and b/app/src/main/res/raw/umeng_push_notification_default_sound.mp3 differ
diff --git a/app/src/main/res/values/style.xml b/app/src/main/res/values/style.xml
index ad8cdb2..3a8b60d 100644
--- a/app/src/main/res/values/style.xml
+++ b/app/src/main/res/values/style.xml
@@ -13,4 +13,13 @@
+
+
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 568f4ff..f5ee06b 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,35 +1,30 @@
-// Top-level build file where you can add configuration options common to all sub-projects/modules.
-
buildscript {
repositories {
google()
- jcenter()
-
- maven { url "https://dl.bintray.com/thelasterstar/maven/" }
- maven { url 'https://dl.bintray.com/umsdk/release' }
-
+ mavenCentral()
+ maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
+ maven { url 'https://artifact.bytedance.com/repository/AwemeOpenSDK' }
+ maven {
+ url 'http://www.idescout.com/maven/repo/'
+ }
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.6.4'
-
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
+ classpath 'com.android.tools.build:gradle:4.1.3'
}
}
allprojects {
repositories {
google()
- jcenter()
-
- maven { url "https://dl.bintray.com/thelasterstar/maven/" }
- maven { url 'https://dl.bintray.com/umsdk/release' }
+ mavenCentral()
+ maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
+ maven { url 'https://artifact.bytedance.com/repository/AwemeOpenSDK' }
}
- tasks.withType(JavaCompile) {
- sourceCompatibility = 1.7
- targetCompatibility = 1.7
- }
+// tasks.withType(JavaCompile) {
+// sourceCompatibility = 1.8
+// targetCompatibility = 1.8
+// }
}
task clean(type: Delete) {
diff --git a/gradle.properties b/gradle.properties
index d81f57b..4025efa 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -15,4 +15,4 @@ org.gradle.jvmargs=-Xmx1536m
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
-android.injected.testOnly = false
+android.injected.testOnly=false
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 70ae57f..227b9e4 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Wed Oct 21 11:51:03 CST 2020
+#Thu Aug 04 16:40:02 CST 2022
distributionBase=GRADLE_USER_HOME
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip
distributionPath=wrapper/dists
-zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
+zipStoreBase=GRADLE_USER_HOME
diff --git a/gradlew.bat b/gradlew.bat
new file mode 100644
index 0000000..aec9973
--- /dev/null
+++ b/gradlew.bat
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/share/main/libs/umeng-share-core-7.3.7.jar b/share/main/libs/umeng-share-core-7.3.7.jar
new file mode 100644
index 0000000..4f6f5e8
Binary files /dev/null and b/share/main/libs/umeng-share-core-7.3.7.jar differ
diff --git "a/share/platforms/QQ\345\256\214\346\225\264\347\211\210/libs/open_sdk_3.5.16.4_r8c01346_lite.jar" "b/share/platforms/QQ\345\256\214\346\225\264\347\211\210/libs/open_sdk_3.5.16.4_r8c01346_lite.jar"
new file mode 100644
index 0000000..0cde6d6
Binary files /dev/null and "b/share/platforms/QQ\345\256\214\346\225\264\347\211\210/libs/open_sdk_3.5.16.4_r8c01346_lite.jar" differ
diff --git "a/share/platforms/QQ\345\256\214\346\225\264\347\211\210/libs/umeng-share-QQ-full-7.3.7.jar" "b/share/platforms/QQ\345\256\214\346\225\264\347\211\210/libs/umeng-share-QQ-full-7.3.7.jar"
new file mode 100644
index 0000000..e22e46d
Binary files /dev/null and "b/share/platforms/QQ\345\256\214\346\225\264\347\211\210/libs/umeng-share-QQ-full-7.3.7.jar" differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_qq.png "b/share/platforms/QQ\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_qq.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_qq.png
rename to "share/platforms/QQ\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_qq.png"
diff --git a/UMLibrary/res/drawable/umeng_socialize_qzone.png "b/share/platforms/QQ\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_qzone.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_qzone.png
rename to "share/platforms/QQ\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_qzone.png"
diff --git a/UMLibrary/libs/libapshare20161108.jar b/share/platforms/alipay/libs/libapshare20161108.jar
old mode 100644
new mode 100755
similarity index 100%
rename from UMLibrary/libs/libapshare20161108.jar
rename to share/platforms/alipay/libs/libapshare20161108.jar
diff --git a/share/platforms/alipay/libs/umeng-share-alipay-7.3.7.jar b/share/platforms/alipay/libs/umeng-share-alipay-7.3.7.jar
new file mode 100644
index 0000000..3ce4002
Binary files /dev/null and b/share/platforms/alipay/libs/umeng-share-alipay-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_alipay.png b/share/platforms/alipay/res/drawable/umeng_socialize_alipay.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_alipay.png
rename to share/platforms/alipay/res/drawable/umeng_socialize_alipay.png
diff --git a/share/platforms/alipay/src/apshare/ShareEntryActivity.java b/share/platforms/alipay/src/apshare/ShareEntryActivity.java
new file mode 100644
index 0000000..5d016c5
--- /dev/null
+++ b/share/platforms/alipay/src/apshare/ShareEntryActivity.java
@@ -0,0 +1,6 @@
+package com.umeng.soexample.apshare;
+
+import com.umeng.socialize.media.ShareCallbackActivity;
+
+public class ShareEntryActivity extends ShareCallbackActivity {
+}
\ No newline at end of file
diff --git a/share/platforms/bytedance/libs/umeng-share-bytedance-7.3.7.jar b/share/platforms/bytedance/libs/umeng-share-bytedance-7.3.7.jar
new file mode 100644
index 0000000..a4d0336
Binary files /dev/null and b/share/platforms/bytedance/libs/umeng-share-bytedance-7.3.7.jar differ
diff --git a/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance.png b/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance.png
new file mode 100644
index 0000000..80918b8
Binary files /dev/null and b/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance.png differ
diff --git a/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance_friends.png b/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance_friends.png
new file mode 100644
index 0000000..80918b8
Binary files /dev/null and b/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance_friends.png differ
diff --git a/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance_publish.png b/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance_publish.png
new file mode 100644
index 0000000..80918b8
Binary files /dev/null and b/share/platforms/bytedance/res/drawable/umeng_socialize_bytedance_publish.png differ
diff --git a/share/platforms/bytedance/src/douyinapi/DouYinEntryActivity.java b/share/platforms/bytedance/src/douyinapi/DouYinEntryActivity.java
new file mode 100644
index 0000000..c6e7950
--- /dev/null
+++ b/share/platforms/bytedance/src/douyinapi/DouYinEntryActivity.java
@@ -0,0 +1,6 @@
+package com.umeng.soexample.douyinapi;
+
+import com.umeng.socialize.douyin.DYCallbackActivity;
+
+public class DouYinEntryActivity extends DYCallbackActivity {
+}
\ No newline at end of file
diff --git a/share/platforms/dingding/libs/umeng-share-Ding-7.3.7.jar b/share/platforms/dingding/libs/umeng-share-Ding-7.3.7.jar
new file mode 100644
index 0000000..bba4b11
Binary files /dev/null and b/share/platforms/dingding/libs/umeng-share-Ding-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_ding.png b/share/platforms/dingding/res/drawable/umeng_socialize_ding.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_ding.png
rename to share/platforms/dingding/res/drawable/umeng_socialize_ding.png
diff --git a/share/platforms/dingding/src/ddshare/DDShareActivity.java b/share/platforms/dingding/src/ddshare/DDShareActivity.java
new file mode 100644
index 0000000..b02c950
--- /dev/null
+++ b/share/platforms/dingding/src/ddshare/DDShareActivity.java
@@ -0,0 +1,6 @@
+package com.umeng.soexample.ddshare;
+
+import com.umeng.socialize.media.DingCallBack;
+
+public class DDShareActivity extends DingCallBack {
+}
\ No newline at end of file
diff --git a/share/platforms/douban/libs/umeng-share-douban-7.3.7.jar b/share/platforms/douban/libs/umeng-share-douban-7.3.7.jar
new file mode 100644
index 0000000..2c36ea1
Binary files /dev/null and b/share/platforms/douban/libs/umeng-share-douban-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_douban.png b/share/platforms/douban/res/drawable/umeng_socialize_douban.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_douban.png
rename to share/platforms/douban/res/drawable/umeng_socialize_douban.png
diff --git a/UMLibrary/libs/json_simple-1.1.jar b/share/platforms/dropbox/libs/json_simple-1.1.jar
similarity index 100%
rename from UMLibrary/libs/json_simple-1.1.jar
rename to share/platforms/dropbox/libs/json_simple-1.1.jar
diff --git a/share/platforms/dropbox/libs/umeng-share-dropbox-7.3.7.jar b/share/platforms/dropbox/libs/umeng-share-dropbox-7.3.7.jar
new file mode 100644
index 0000000..8aaacab
Binary files /dev/null and b/share/platforms/dropbox/libs/umeng-share-dropbox-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_dropbox.png b/share/platforms/dropbox/res/drawable/umeng_socialize_dropbox.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_dropbox.png
rename to share/platforms/dropbox/res/drawable/umeng_socialize_dropbox.png
diff --git a/share/platforms/email/libs/umeng-share-email-7.3.7.jar b/share/platforms/email/libs/umeng-share-email-7.3.7.jar
new file mode 100644
index 0000000..a490fa4
Binary files /dev/null and b/share/platforms/email/libs/umeng-share-email-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_gmail.png b/share/platforms/email/res/drawable/umeng_socialize_gmail.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_gmail.png
rename to share/platforms/email/res/drawable/umeng_socialize_gmail.png
diff --git a/share/platforms/evernote/libs/umeng-share-evernote-7.3.7.jar b/share/platforms/evernote/libs/umeng-share-evernote-7.3.7.jar
new file mode 100644
index 0000000..02bb414
Binary files /dev/null and b/share/platforms/evernote/libs/umeng-share-evernote-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_evernote.png b/share/platforms/evernote/res/drawable/umeng_socialize_evernote.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_evernote.png
rename to share/platforms/evernote/res/drawable/umeng_socialize_evernote.png
diff --git a/share/platforms/facebook/libs/umeng-share-facebook-7.3.7.jar b/share/platforms/facebook/libs/umeng-share-facebook-7.3.7.jar
new file mode 100644
index 0000000..e4dc83c
Binary files /dev/null and b/share/platforms/facebook/libs/umeng-share-facebook-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/com_facebook_close.png b/share/platforms/facebook/res/drawable/com_facebook_close.png
old mode 100644
new mode 100755
similarity index 100%
rename from UMLibrary/res/drawable/com_facebook_close.png
rename to share/platforms/facebook/res/drawable/com_facebook_close.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_facebook.png b/share/platforms/facebook/res/drawable/umeng_socialize_facebook.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_facebook.png
rename to share/platforms/facebook/res/drawable/umeng_socialize_facebook.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_fbmessage.png b/share/platforms/facebook/res/drawable/umeng_socialize_fbmessage.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_fbmessage.png
rename to share/platforms/facebook/res/drawable/umeng_socialize_fbmessage.png
diff --git a/UMLibrary/res/layout/com_facebook_activity_layout.xml b/share/platforms/facebook/res/layout/com_facebook_activity_layout.xml
similarity index 100%
rename from UMLibrary/res/layout/com_facebook_activity_layout.xml
rename to share/platforms/facebook/res/layout/com_facebook_activity_layout.xml
diff --git a/UMLibrary/res/layout/com_facebook_login_fragment.xml b/share/platforms/facebook/res/layout/com_facebook_login_fragment.xml
similarity index 100%
rename from UMLibrary/res/layout/com_facebook_login_fragment.xml
rename to share/platforms/facebook/res/layout/com_facebook_login_fragment.xml
diff --git a/UMLibrary/res/values/facebook_strings.xml b/share/platforms/facebook/res/values/facebook_strings.xml
similarity index 100%
rename from UMLibrary/res/values/facebook_strings.xml
rename to share/platforms/facebook/res/values/facebook_strings.xml
diff --git a/UMLibrary/res/values/messenger_button_strings.xml b/share/platforms/facebook/res/values/messenger_button_strings.xml
similarity index 100%
rename from UMLibrary/res/values/messenger_button_strings.xml
rename to share/platforms/facebook/res/values/messenger_button_strings.xml
diff --git a/UMLibrary/res/values/umeng_socialize_facebook_strings.xml b/share/platforms/facebook/res/values/umeng_socialize_facebook_strings.xml
similarity index 100%
rename from UMLibrary/res/values/umeng_socialize_facebook_strings.xml
rename to share/platforms/facebook/res/values/umeng_socialize_facebook_strings.xml
diff --git a/share/platforms/flickr/libs/umeng-share-flickr-7.3.7.jar b/share/platforms/flickr/libs/umeng-share-flickr-7.3.7.jar
new file mode 100644
index 0000000..9d1c734
Binary files /dev/null and b/share/platforms/flickr/libs/umeng-share-flickr-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_flickr.png b/share/platforms/flickr/res/drawable/umeng_socialize_flickr.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_flickr.png
rename to share/platforms/flickr/res/drawable/umeng_socialize_flickr.png
diff --git a/share/platforms/foursquare/libs/umeng-share-foursquare-7.3.7.jar b/share/platforms/foursquare/libs/umeng-share-foursquare-7.3.7.jar
new file mode 100644
index 0000000..bdea13b
Binary files /dev/null and b/share/platforms/foursquare/libs/umeng-share-foursquare-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_foursquare.png b/share/platforms/foursquare/res/drawable/umeng_socialize_foursquare.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_foursquare.png
rename to share/platforms/foursquare/res/drawable/umeng_socialize_foursquare.png
diff --git a/UMLibrary/res/values/umeng_socialize_foursquare_strings.xml b/share/platforms/foursquare/res/values/umeng_socialize_foursquare_strings.xml
similarity index 100%
rename from UMLibrary/res/values/umeng_socialize_foursquare_strings.xml
rename to share/platforms/foursquare/res/values/umeng_socialize_foursquare_strings.xml
diff --git a/share/platforms/honor/libs/Honor-openSDK-6.0.3.004.aar b/share/platforms/honor/libs/Honor-openSDK-6.0.3.004.aar
new file mode 100644
index 0000000..8f86d27
Binary files /dev/null and b/share/platforms/honor/libs/Honor-openSDK-6.0.3.004.aar differ
diff --git a/share/platforms/honor/libs/umeng-share-honor-7.3.7.jar b/share/platforms/honor/libs/umeng-share-honor-7.3.7.jar
new file mode 100644
index 0000000..7482bb7
Binary files /dev/null and b/share/platforms/honor/libs/umeng-share-honor-7.3.7.jar differ
diff --git a/share/platforms/honor/res/drawable/umeng_socialize_honor.png b/share/platforms/honor/res/drawable/umeng_socialize_honor.png
new file mode 100644
index 0000000..238fdcb
Binary files /dev/null and b/share/platforms/honor/res/drawable/umeng_socialize_honor.png differ
diff --git a/share/platforms/instagram/libs/umeng-share-instagram-7.3.7.jar b/share/platforms/instagram/libs/umeng-share-instagram-7.3.7.jar
new file mode 100644
index 0000000..6f4f104
Binary files /dev/null and b/share/platforms/instagram/libs/umeng-share-instagram-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_instagram.png b/share/platforms/instagram/res/drawable/umeng_socialize_instagram.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_instagram.png
rename to share/platforms/instagram/res/drawable/umeng_socialize_instagram.png
diff --git a/share/platforms/kakao/libs/umeng-share-kakao-7.3.7.jar b/share/platforms/kakao/libs/umeng-share-kakao-7.3.7.jar
new file mode 100644
index 0000000..bc9c1f0
Binary files /dev/null and b/share/platforms/kakao/libs/umeng-share-kakao-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_kakao.png b/share/platforms/kakao/res/drawable/umeng_socialize_kakao.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_kakao.png
rename to share/platforms/kakao/res/drawable/umeng_socialize_kakao.png
diff --git a/UMLibrary/res/layout/umeng_socialize_activity_kakao_webview.xml b/share/platforms/kakao/res/layout/umeng_socialize_activity_kakao_webview.xml
similarity index 100%
rename from UMLibrary/res/layout/umeng_socialize_activity_kakao_webview.xml
rename to share/platforms/kakao/res/layout/umeng_socialize_activity_kakao_webview.xml
diff --git a/UMLibrary/res/values/umeng_socialize_kakao_strings.xml b/share/platforms/kakao/res/values/umeng_socialize_kakao_strings.xml
similarity index 100%
rename from UMLibrary/res/values/umeng_socialize_kakao_strings.xml
rename to share/platforms/kakao/res/values/umeng_socialize_kakao_strings.xml
diff --git a/share/platforms/line/libs/umeng-share-line-7.3.7.jar b/share/platforms/line/libs/umeng-share-line-7.3.7.jar
new file mode 100644
index 0000000..094531a
Binary files /dev/null and b/share/platforms/line/libs/umeng-share-line-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_line.png b/share/platforms/line/res/drawable/umeng_socialize_line.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_line.png
rename to share/platforms/line/res/drawable/umeng_socialize_line.png
diff --git a/share/platforms/linkedin/libs/umeng-share-linkedin-7.3.7.jar b/share/platforms/linkedin/libs/umeng-share-linkedin-7.3.7.jar
new file mode 100644
index 0000000..d977706
Binary files /dev/null and b/share/platforms/linkedin/libs/umeng-share-linkedin-7.3.7.jar differ
diff --git a/UMLibrary/libs/volley.jar b/share/platforms/linkedin/libs/volley.jar
similarity index 100%
rename from UMLibrary/libs/volley.jar
rename to share/platforms/linkedin/libs/volley.jar
diff --git a/UMLibrary/res/drawable/umeng_socialize_linkedin.png b/share/platforms/linkedin/res/drawable/umeng_socialize_linkedin.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_linkedin.png
rename to share/platforms/linkedin/res/drawable/umeng_socialize_linkedin.png
diff --git a/share/platforms/pinterest/libs/umeng-share-pinterest-7.3.7.jar b/share/platforms/pinterest/libs/umeng-share-pinterest-7.3.7.jar
new file mode 100644
index 0000000..e14d06b
Binary files /dev/null and b/share/platforms/pinterest/libs/umeng-share-pinterest-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_pinterest.png b/share/platforms/pinterest/res/drawable/umeng_socialize_pinterest.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_pinterest.png
rename to share/platforms/pinterest/res/drawable/umeng_socialize_pinterest.png
diff --git a/share/platforms/pocket/libs/umeng-share-pocket-7.3.7.jar b/share/platforms/pocket/libs/umeng-share-pocket-7.3.7.jar
new file mode 100644
index 0000000..8e99079
Binary files /dev/null and b/share/platforms/pocket/libs/umeng-share-pocket-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_pocket.png b/share/platforms/pocket/res/drawable/umeng_socialize_pocket.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_pocket.png
rename to share/platforms/pocket/res/drawable/umeng_socialize_pocket.png
diff --git a/share/platforms/sms/libs/umeng-share-sms-7.3.7.jar b/share/platforms/sms/libs/umeng-share-sms-7.3.7.jar
new file mode 100644
index 0000000..cd1db13
Binary files /dev/null and b/share/platforms/sms/libs/umeng-share-sms-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_sms.png b/share/platforms/sms/res/drawable/umeng_socialize_sms.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_sms.png
rename to share/platforms/sms/res/drawable/umeng_socialize_sms.png
diff --git a/share/platforms/tumblr/libs/umeng-share-tumblr-7.3.7.jar b/share/platforms/tumblr/libs/umeng-share-tumblr-7.3.7.jar
new file mode 100644
index 0000000..8cd0262
Binary files /dev/null and b/share/platforms/tumblr/libs/umeng-share-tumblr-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_tumblr.png b/share/platforms/tumblr/res/drawable/umeng_socialize_tumblr.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_tumblr.png
rename to share/platforms/tumblr/res/drawable/umeng_socialize_tumblr.png
diff --git a/share/platforms/twitter/libs/umeng-share-twitter-7.3.7.jar b/share/platforms/twitter/libs/umeng-share-twitter-7.3.7.jar
new file mode 100644
index 0000000..ecc8023
Binary files /dev/null and b/share/platforms/twitter/libs/umeng-share-twitter-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_twitter.png b/share/platforms/twitter/res/drawable/umeng_socialize_twitter.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_twitter.png
rename to share/platforms/twitter/res/drawable/umeng_socialize_twitter.png
diff --git a/share/platforms/twitter/src/twitterapi/TwitterShareReceiver.java b/share/platforms/twitter/src/twitterapi/TwitterShareReceiver.java
new file mode 100644
index 0000000..8c1681a
--- /dev/null
+++ b/share/platforms/twitter/src/twitterapi/TwitterShareReceiver.java
@@ -0,0 +1,6 @@
+package com.umeng.soexample.twitterapi;
+
+import com.umeng.socialize.handler.UMTwitterReceiver;
+
+public class TwitterShareReceiver extends UMTwitterReceiver {
+}
\ No newline at end of file
diff --git a/share/platforms/vkontakte/libs/umeng-share-vkontakte-7.3.7.jar b/share/platforms/vkontakte/libs/umeng-share-vkontakte-7.3.7.jar
new file mode 100644
index 0000000..11e8bef
Binary files /dev/null and b/share/platforms/vkontakte/libs/umeng-share-vkontakte-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/ic_ab_app.png b/share/platforms/vkontakte/res/drawable/ic_ab_app.png
similarity index 100%
rename from UMLibrary/res/drawable/ic_ab_app.png
rename to share/platforms/vkontakte/res/drawable/ic_ab_app.png
diff --git a/UMLibrary/res/drawable/ic_ab_done.png b/share/platforms/vkontakte/res/drawable/ic_ab_done.png
similarity index 100%
rename from UMLibrary/res/drawable/ic_ab_done.png
rename to share/platforms/vkontakte/res/drawable/ic_ab_done.png
diff --git a/UMLibrary/res/drawable/vk_clear_shape.xml b/share/platforms/vkontakte/res/drawable/vk_clear_shape.xml
similarity index 100%
rename from UMLibrary/res/drawable/vk_clear_shape.xml
rename to share/platforms/vkontakte/res/drawable/vk_clear_shape.xml
diff --git a/UMLibrary/res/drawable/vk_gray_transparent_shape.xml b/share/platforms/vkontakte/res/drawable/vk_gray_transparent_shape.xml
similarity index 100%
rename from UMLibrary/res/drawable/vk_gray_transparent_shape.xml
rename to share/platforms/vkontakte/res/drawable/vk_gray_transparent_shape.xml
diff --git a/UMLibrary/res/drawable/vk_icon.png b/share/platforms/vkontakte/res/drawable/vk_icon.png
similarity index 100%
rename from UMLibrary/res/drawable/vk_icon.png
rename to share/platforms/vkontakte/res/drawable/vk_icon.png
diff --git a/UMLibrary/res/drawable/vk_share_send_button_background.xml b/share/platforms/vkontakte/res/drawable/vk_share_send_button_background.xml
similarity index 100%
rename from UMLibrary/res/drawable/vk_share_send_button_background.xml
rename to share/platforms/vkontakte/res/drawable/vk_share_send_button_background.xml
diff --git a/UMLibrary/res/layout/vk_captcha_dialog.xml b/share/platforms/vkontakte/res/layout/vk_captcha_dialog.xml
similarity index 100%
rename from UMLibrary/res/layout/vk_captcha_dialog.xml
rename to share/platforms/vkontakte/res/layout/vk_captcha_dialog.xml
diff --git a/UMLibrary/res/layout/vk_open_auth_dialog.xml b/share/platforms/vkontakte/res/layout/vk_open_auth_dialog.xml
similarity index 100%
rename from UMLibrary/res/layout/vk_open_auth_dialog.xml
rename to share/platforms/vkontakte/res/layout/vk_open_auth_dialog.xml
diff --git a/UMLibrary/res/layout/vk_share_dialog.xml b/share/platforms/vkontakte/res/layout/vk_share_dialog.xml
similarity index 100%
rename from UMLibrary/res/layout/vk_share_dialog.xml
rename to share/platforms/vkontakte/res/layout/vk_share_dialog.xml
diff --git a/UMLibrary/res/values/vk_color.xml b/share/platforms/vkontakte/res/values/vk_color.xml
similarity index 100%
rename from UMLibrary/res/values/vk_color.xml
rename to share/platforms/vkontakte/res/values/vk_color.xml
diff --git a/UMLibrary/res/values/vk_dimen.xml b/share/platforms/vkontakte/res/values/vk_dimen.xml
similarity index 100%
rename from UMLibrary/res/values/vk_dimen.xml
rename to share/platforms/vkontakte/res/values/vk_dimen.xml
diff --git a/UMLibrary/res/values/vk_strings.xml b/share/platforms/vkontakte/res/values/vk_strings.xml
similarity index 100%
rename from UMLibrary/res/values/vk_strings.xml
rename to share/platforms/vkontakte/res/values/vk_strings.xml
diff --git a/UMLibrary/res/values/vk_styles.xml b/share/platforms/vkontakte/res/values/vk_styles.xml
similarity index 99%
rename from UMLibrary/res/values/vk_styles.xml
rename to share/platforms/vkontakte/res/values/vk_styles.xml
index 70af7c0..c905bbf 100644
--- a/UMLibrary/res/values/vk_styles.xml
+++ b/share/platforms/vkontakte/res/values/vk_styles.xml
@@ -13,4 +13,7 @@
- @android:color/transparent
- @null
+
+
+
\ No newline at end of file
diff --git a/share/platforms/whatsapp/libs/umeng-share-whatsapp-7.3.7.jar b/share/platforms/whatsapp/libs/umeng-share-whatsapp-7.3.7.jar
new file mode 100644
index 0000000..98565e9
Binary files /dev/null and b/share/platforms/whatsapp/libs/umeng-share-whatsapp-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_whatsapp.png b/share/platforms/whatsapp/res/drawable/umeng_socialize_whatsapp.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_whatsapp.png
rename to share/platforms/whatsapp/res/drawable/umeng_socialize_whatsapp.png
diff --git a/UMLibrary/libs/SocialSDK_yixin_1.jar b/share/platforms/yixin/libs/SocialSDK_yixin_1.jar
similarity index 100%
rename from UMLibrary/libs/SocialSDK_yixin_1.jar
rename to share/platforms/yixin/libs/SocialSDK_yixin_1.jar
diff --git a/share/platforms/yixin/libs/umeng-share-yixin-7.3.7.jar b/share/platforms/yixin/libs/umeng-share-yixin-7.3.7.jar
new file mode 100644
index 0000000..8751679
Binary files /dev/null and b/share/platforms/yixin/libs/umeng-share-yixin-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_yixin.png b/share/platforms/yixin/res/drawable/umeng_socialize_yixin.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_yixin.png
rename to share/platforms/yixin/res/drawable/umeng_socialize_yixin.png
diff --git a/UMLibrary/res/drawable/umeng_socialize_yixin_circle.png b/share/platforms/yixin/res/drawable/umeng_socialize_yixin_circle.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_yixin_circle.png
rename to share/platforms/yixin/res/drawable/umeng_socialize_yixin_circle.png
diff --git a/share/platforms/yixin/src/yxapi/YXEntryActivity.java b/share/platforms/yixin/src/yxapi/YXEntryActivity.java
new file mode 100644
index 0000000..51caabd
--- /dev/null
+++ b/share/platforms/yixin/src/yxapi/YXEntryActivity.java
@@ -0,0 +1,6 @@
+package com.umeng.soexample.yxapi;
+
+import com.umeng.socialize.activity.YXCallbackActivity;
+
+public class YXEntryActivity extends YXCallbackActivity {
+}
\ No newline at end of file
diff --git a/share/platforms/ynote/libs/umeng-share-ynote-7.3.7.jar b/share/platforms/ynote/libs/umeng-share-ynote-7.3.7.jar
new file mode 100644
index 0000000..a8cdc2c
Binary files /dev/null and b/share/platforms/ynote/libs/umeng-share-ynote-7.3.7.jar differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_ynote.png b/share/platforms/ynote/res/drawable/umeng_socialize_ynote.png
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_ynote.png
rename to share/platforms/ynote/res/drawable/umeng_socialize_ynote.png
diff --git "a/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/libs/lib_wwapi-2.0.12.11.aar" "b/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/libs/lib_wwapi-2.0.12.11.aar"
new file mode 100644
index 0000000..5f9a9cc
Binary files /dev/null and "b/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/libs/lib_wwapi-2.0.12.11.aar" differ
diff --git "a/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/libs/umeng-share-wxwork-7.3.7.jar" "b/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/libs/umeng-share-wxwork-7.3.7.jar"
new file mode 100644
index 0000000..9f8fbac
Binary files /dev/null and "b/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/libs/umeng-share-wxwork-7.3.7.jar" differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_wxwork.png "b/share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/res/drawable/umeng_socialize_wxwork.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_wxwork.png
rename to "share/platforms/\344\274\201\344\270\232\345\276\256\344\277\241/res/drawable/umeng_socialize_wxwork.png"
diff --git "a/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/libs/umeng-share-wechat-full-7.3.7.jar" "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/libs/umeng-share-wechat-full-7.3.7.jar"
new file mode 100644
index 0000000..7df15e0
Binary files /dev/null and "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/libs/umeng-share-wechat-full-7.3.7.jar" differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_fav.png "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_fav.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_fav.png
rename to "share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_fav.png"
diff --git a/UMLibrary/res/drawable/umeng_socialize_wechat.png "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_wechat.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_wechat.png
rename to "share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_wechat.png"
diff --git a/UMLibrary/res/drawable/umeng_socialize_wxcircle.png "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_wxcircle.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_wxcircle.png
rename to "share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_wxcircle.png"
diff --git "a/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/src/wxapi/WXEntryActivity.java" "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/src/wxapi/WXEntryActivity.java"
new file mode 100644
index 0000000..95ac946
--- /dev/null
+++ "b/share/platforms/\345\276\256\344\277\241\345\256\214\346\225\264\347\211\210/src/wxapi/WXEntryActivity.java"
@@ -0,0 +1,6 @@
+package com.umeng.soexample.wxapi;
+
+import com.umeng.socialize.weixin.view.WXCallbackActivity;
+
+public class WXEntryActivity extends WXCallbackActivity {
+}
\ No newline at end of file
diff --git "a/share/platforms/\346\226\260\346\265\252\345\256\214\346\225\264\347\211\210/libs/umeng-share-sina-full-7.3.7.jar" "b/share/platforms/\346\226\260\346\265\252\345\256\214\346\225\264\347\211\210/libs/umeng-share-sina-full-7.3.7.jar"
new file mode 100644
index 0000000..a18190b
Binary files /dev/null and "b/share/platforms/\346\226\260\346\265\252\345\256\214\346\225\264\347\211\210/libs/umeng-share-sina-full-7.3.7.jar" differ
diff --git a/UMLibrary/res/drawable/umeng_socialize_sina.png "b/share/platforms/\346\226\260\346\265\252\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_sina.png"
similarity index 100%
rename from UMLibrary/res/drawable/umeng_socialize_sina.png
rename to "share/platforms/\346\226\260\346\265\252\345\256\214\346\225\264\347\211\210/res/drawable/umeng_socialize_sina.png"
diff --git a/share/shareback/libs/umeng-link-2.0.0.aar b/share/shareback/libs/umeng-link-2.0.0.aar
new file mode 100644
index 0000000..2c58d8f
Binary files /dev/null and b/share/shareback/libs/umeng-link-2.0.0.aar differ