├── app ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── drawable │ │ │ │ ├── ghoul.jpeg │ │ │ │ ├── begining.jpg │ │ │ │ └── selector_menu_home.xml │ │ │ ├── values │ │ │ │ ├── strings.xml │ │ │ │ ├── styles.xml │ │ │ │ └── colors.xml │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── ic_menu_home_normal.png │ │ │ │ └── ic_menu_home_selected.png │ │ │ ├── color │ │ │ │ └── selector_blue.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── layout │ │ │ │ ├── activity_detail.xml │ │ │ │ ├── activity_test1.xml │ │ │ │ ├── pic_layout.xml │ │ │ │ ├── support_frag_layout.xml │ │ │ │ ├── frag_layout.xml │ │ │ │ ├── activity_reg_remote_service_by_anno.xml │ │ │ │ ├── activity_local_service_annotation_demo.xml │ │ │ │ ├── activity_view_pager.xml │ │ │ │ ├── activity_view_test.xml │ │ │ │ ├── activity_use_local_service_by_anno.xml │ │ │ │ ├── activity_local_service_by_anno_demo.xml │ │ │ │ ├── activity_use_remote_service_by_anno.xml │ │ │ │ ├── activity_support_frag.xml │ │ │ │ ├── activity_frag.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_lifecycle_test.xml │ │ │ └── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ ├── java │ │ │ └── wang │ │ │ │ └── imallen │ │ │ │ └── blog │ │ │ │ └── servicemanager │ │ │ │ ├── ICheckPear.java │ │ │ │ ├── CheckPearImpl.java │ │ │ │ ├── utils │ │ │ │ ├── ToastUtil.java │ │ │ │ └── ToastUtils.java │ │ │ │ ├── test │ │ │ │ └── TestActivity1.java │ │ │ │ ├── lifecycle │ │ │ │ ├── frag │ │ │ │ │ ├── CustomFragmentAdapter.java │ │ │ │ │ ├── FragActivity.java │ │ │ │ │ ├── SupportFragActivity.java │ │ │ │ │ ├── TextFrag.java │ │ │ │ │ ├── PicFrag.java │ │ │ │ │ ├── MyTextFrag.java │ │ │ │ │ ├── CustomSupportFragment.java │ │ │ │ │ ├── CustomFragment.java │ │ │ │ │ └── MyPicFrag.java │ │ │ │ ├── ViewTestActivity.java │ │ │ │ ├── ViewPagerActivity.java │ │ │ │ └── LifecycleTestActivity.java │ │ │ │ └── CustomApp.java │ │ └── AndroidManifest.xml │ ├── test │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── servicemanager │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── wang │ │ └── imallen │ │ └── blog │ │ └── servicemanager │ │ └── ExampleInstrumentedTest.java ├── proguard-rules.pro └── build.gradle ├── applemodule ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── values │ │ │ │ └── strings.xml │ │ │ └── layout │ │ │ │ ├── activity_debug_main.xml │ │ │ │ ├── activity_inject_demo.xml │ │ │ │ ├── activity_event.xml │ │ │ │ ├── activity_banana2.xml │ │ │ │ ├── activity_local_service_demo.xml │ │ │ │ ├── activity_banana.xml │ │ │ │ └── activity_apple.xml │ │ ├── AndroidManifest.xml │ │ ├── debug │ │ │ └── AndroidManifest.xml │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── applemodule │ │ │ ├── service │ │ │ ├── CheckApple.java │ │ │ └── BuyAppleImpl.java │ │ │ ├── event │ │ │ └── EventActivity.java │ │ │ └── local │ │ │ └── LocalServiceDemo.java │ ├── test │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── applemodule │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── wang │ │ └── imallen │ │ └── blog │ │ └── applemodule │ │ └── ExampleInstrumentedTest.java ├── proguard-rules.pro └── build.gradle ├── Andromeda-Lib ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── aidl │ │ │ └── org │ │ │ │ └── qiyi │ │ │ │ └── video │ │ │ │ └── svg │ │ │ │ ├── event │ │ │ │ └── Event.aidl │ │ │ │ ├── bean │ │ │ │ └── BinderBean.aidl │ │ │ │ ├── ICommuStub.aidl │ │ │ │ ├── IPCCallback.aidl │ │ │ │ ├── IRemoteTransfer.aidl │ │ │ │ └── IDispatcher.aidl │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── org │ │ │ └── qiyi │ │ │ └── video │ │ │ └── svg │ │ │ ├── event │ │ │ ├── EventListener.java │ │ │ └── Event.java │ │ │ ├── life │ │ │ ├── LifecycleListener.java │ │ │ ├── Lifecycle.java │ │ │ └── ApplicationLifecycle.java │ │ │ ├── backup │ │ │ ├── IEmergencyHandler.java │ │ │ └── EmergencyHandler.java │ │ │ ├── local │ │ │ ├── ILocalServiceHub.java │ │ │ └── LocalServiceHub.java │ │ │ ├── transfer │ │ │ ├── event │ │ │ │ └── IEventTransfer.java │ │ │ └── service │ │ │ │ └── IRemoteServiceTransfer.java │ │ │ ├── utils │ │ │ ├── Utils.java │ │ │ ├── IOUtils.java │ │ │ ├── CollectionUtils.java │ │ │ ├── ServiceUtils.java │ │ │ └── Preconditions.java │ │ │ ├── log │ │ │ └── Logger.java │ │ │ ├── remote │ │ │ ├── IRemoteManager.java │ │ │ └── IRemoteManagerRetriever.java │ │ │ ├── dispatcher │ │ │ ├── event │ │ │ │ └── IEventDispatcher.java │ │ │ ├── service │ │ │ │ └── IServiceDispatcher.java │ │ │ ├── DispatcherProvider.java │ │ │ └── RemoteGuardService.java │ │ │ ├── bean │ │ │ ├── ConnectionBean.java │ │ │ └── BinderBean.java │ │ │ ├── callback │ │ │ └── BaseCallback.java │ │ │ ├── BinderWrapper.java │ │ │ └── config │ │ │ └── Constants.java │ ├── test │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── servicemanagerlib │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── wang │ │ └── imallen │ │ └── blog │ │ └── servicemanagerlib │ │ └── ExampleInstrumentedTest.java ├── gradle.properties ├── upload.gradle ├── proguard-rules.pro └── build.gradle ├── Andromeda-Plugin ├── .gitignore ├── src │ └── main │ │ ├── resources │ │ └── META-INF │ │ │ └── gradle-plugins │ │ │ └── org.qiyi.svg.plugin.properties │ │ └── groovy │ │ └── org │ │ └── qiyi │ │ └── video │ │ └── svg │ │ └── plugin │ │ ├── extension │ │ └── DispatcherExtension.groovy │ │ ├── manifest │ │ ├── IManifestParser.groovy │ │ ├── IComponentReader.groovy │ │ └── ComponentReader.groovy │ │ ├── service │ │ └── IServiceGenerator.groovy │ │ ├── ClassAppender.groovy │ │ └── AndromedaPlugin.groovy ├── upload.gradle └── build.gradle ├── cherrymodule ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── values │ │ │ │ └── strings.xml │ │ │ └── layout │ │ │ │ ├── activity_use_remote_service_from_apple_module.xml │ │ │ │ ├── activity_use_local_service_from_apple.xml │ │ │ │ └── activity_cherry.xml │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── cherrymodule │ │ │ └── CherryActivity.java │ ├── test │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── cherrymodule │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── wang │ │ └── imallen │ │ └── blog │ │ └── cherrymodule │ │ └── ExampleInstrumentedTest.java ├── proguard-rules.pro └── build.gradle ├── moduleexportlib ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── wang │ │ │ │ └── imallen │ │ │ │ └── blog │ │ │ │ └── moduleexportlib │ │ │ │ ├── event │ │ │ │ └── EventConstants.java │ │ │ │ ├── apple │ │ │ │ └── ICheckApple.java │ │ │ │ └── cherry │ │ │ │ ├── IDeliverCherry.java │ │ │ │ └── Cherry.java │ │ └── aidl │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── moduleexportlib │ │ │ ├── apple │ │ │ └── IBuyApple.aidl │ │ │ ├── show │ │ │ └── IDisplayTalkShow.aidl │ │ │ └── cherry │ │ │ └── IBuyCherry.aidl │ ├── test │ │ └── java │ │ │ └── wang │ │ │ └── imallen │ │ │ └── blog │ │ │ └── moduleexportlib │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── wang │ │ └── imallen │ │ └── blog │ │ └── moduleexportlib │ │ └── ExampleInstrumentedTest.java ├── gradle.properties ├── proguard-rules.pro └── build.gradle ├── res ├── qq_group.png ├── Andromeda_Module_arch.png ├── StarBridge_service_arch.png └── StarBridge_star_diagram.png ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── settings.gradle ├── .gitignore ├── gradle.properties └── gradlew.bat /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /applemodule/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Andromeda-Lib/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Andromeda-Plugin/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /cherrymodule/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /moduleexportlib/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /res/qq_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/res/qq_group.png -------------------------------------------------------------------------------- /res/Andromeda_Module_arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/res/Andromeda_Module_arch.png -------------------------------------------------------------------------------- /res/StarBridge_service_arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/res/StarBridge_service_arch.png -------------------------------------------------------------------------------- /res/StarBridge_star_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/res/StarBridge_star_diagram.png -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /app/src/main/res/drawable/ghoul.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/drawable/ghoul.jpeg -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Andromeda 3 | 4 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/begining.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/drawable/begining.jpg -------------------------------------------------------------------------------- /applemodule/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | AppleModule 3 | 4 | -------------------------------------------------------------------------------- /cherrymodule/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | CherryModule 3 | 4 | -------------------------------------------------------------------------------- /Andromeda-Lib/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ServiceManagerLib 3 | 4 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ModuleExportLib 3 | 4 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app', ':moduleexportlib', ':applemodule', ':cherrymodule', ':Andromeda-Lib', ':buildSrc', ':Andromeda-Plugin' 2 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Andromeda-Plugin/src/main/resources/META-INF/gradle-plugins/org.qiyi.svg.plugin.properties: -------------------------------------------------------------------------------- 1 | implementation-class=org.qiyi.video.svg.plugin.AndromedaPlugin -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /moduleexportlib/gradle.properties: -------------------------------------------------------------------------------- 1 | ARTIFACTID=exportlib 2 | LIBRARY_VERSION=0.0.2 3 | 4 | LOCAL_REPO_URL=file:///Users/wangallen/Study/Android/local_maven/repo -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_menu_home_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/drawable-xxhdpi/ic_menu_home_normal.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_menu_home_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iqiyi/Andromeda/HEAD/app/src/main/res/drawable-xxhdpi/ic_menu_home_selected.png -------------------------------------------------------------------------------- /moduleexportlib/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | -------------------------------------------------------------------------------- /Andromeda-Lib/src/main/aidl/org/qiyi/video/svg/event/Event.aidl: -------------------------------------------------------------------------------- 1 | // Event.aidl 2 | package org.qiyi.video.svg.event; 3 | 4 | // Declare any non-default types here with import statements 5 | 6 | parcelable Event; -------------------------------------------------------------------------------- /Andromeda-Lib/src/main/aidl/org/qiyi/video/svg/bean/BinderBean.aidl: -------------------------------------------------------------------------------- 1 | // BinderBean.aidl 2 | package org.qiyi.video.svg.bean; 3 | 4 | // Declare any non-default types here with import statements 5 | 6 | parcelable BinderBean; -------------------------------------------------------------------------------- /Andromeda-Lib/gradle.properties: -------------------------------------------------------------------------------- 1 | ARTIFACTID=svglib 2 | LIBRARY_VERSION=0.0.8 3 | 4 | LOCAL_REPO_URL=file:///Users/wangallen/Study/Android/local_maven/repo 5 | 6 | URL=http://maven.mbd.qiyi.domain/nexus/content/repositories/mcg-archNEXUS_REPO_U -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sun Jan 07 23:31:56 CST 2018 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip 7 | -------------------------------------------------------------------------------- /Andromeda-Lib/src/main/aidl/org/qiyi/video/svg/ICommuStub.aidl: -------------------------------------------------------------------------------- 1 | // ICommuStub.aidl 2 | package org.qiyi.video.svg; 3 | 4 | // Declare any non-default types here with import statements 5 | //这个接口只是起一个占位作用,暂时是不用的 6 | interface ICommuStub { 7 | 8 | void commu(in Bundle args); 9 | 10 | } 11 | -------------------------------------------------------------------------------- /app/src/main/res/color/selector_blue.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/java/wang/imallen/blog/servicemanager/ICheckPear.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.servicemanager; 2 | 3 | /** 4 | * Created by wangallen on 2018/2/12. 5 | */ 6 | 7 | public interface ICheckPear { 8 | 9 | int getCalories(int pearNum); 10 | 11 | String getPearDesc(int pearType); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/java/wang/imallen/blog/moduleexportlib/event/EventConstants.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.moduleexportlib.event; 2 | 3 | /** 4 | * Created by wangallen on 2018/1/25. 5 | */ 6 | 7 | public class EventConstants { 8 | 9 | public static final String APPLE_EVENT = "Apple"; 10 | 11 | } 12 | -------------------------------------------------------------------------------- /Andromeda-Lib/src/main/aidl/org/qiyi/video/svg/IPCCallback.aidl: -------------------------------------------------------------------------------- 1 | // Callback.aidl 2 | package org.qiyi.video.svg; 3 | import android.os.Bundle; 4 | // Declare any non-default types here with import statements 5 | 6 | interface IPCCallback { 7 | void onSuccess(in Bundle result); 8 | void onFail(String reason); 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/aidl/wang/imallen/blog/moduleexportlib/apple/IBuyApple.aidl: -------------------------------------------------------------------------------- 1 | // IBuyApple.aidl 2 | package wang.imallen.blog.moduleexportlib.apple; 3 | import org.qiyi.video.svg.IPCCallback; 4 | 5 | interface IBuyApple { 6 | int buyAppleInShop(int userId); 7 | void buyAppleOnNet(int userId,IPCCallback callback); 8 | } 9 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/selector_menu_home.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/java/wang/imallen/blog/moduleexportlib/apple/ICheckApple.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.moduleexportlib.apple; 2 | 3 | /** 4 | * Created by wangallen on 2018/1/18. 5 | */ 6 | 7 | public interface ICheckApple { 8 | int getAppleCalories(int appleNum); 9 | 10 | String getAppleDescription(int appleType); 11 | } 12 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/aidl/wang/imallen/blog/moduleexportlib/show/IDisplayTalkShow.aidl: -------------------------------------------------------------------------------- 1 | // IDisplayTalkShow.aidl 2 | package wang.imallen.blog.moduleexportlib.show; 3 | 4 | // Declare any non-default types here with import statements 5 | 6 | interface IDisplayTalkShow { 7 | String getShowName(); 8 | 9 | String[]getHostNames(); 10 | 11 | void startTalkShow(int userId); 12 | } 13 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/aidl/wang/imallen/blog/moduleexportlib/cherry/IBuyCherry.aidl: -------------------------------------------------------------------------------- 1 | // IBuyCherry.aidl 2 | package wang.imallen.blog.moduleexportlib.cherry; 3 | import org.qiyi.video.svg.IPCCallback; 4 | // Declare any non-default types here with import statements 5 | 6 | interface IBuyCherry { 7 | 8 | int buyCherryInShop(int userId); 9 | void buyCherryOnNet(int userId,IPCCallback callback); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/wang/imallen/blog/servicemanager/CheckPearImpl.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.servicemanager; 2 | 3 | /** 4 | * Created by wangallen on 2018/2/12. 5 | */ 6 | 7 | public class CheckPearImpl implements ICheckPear { 8 | @Override 9 | public int getCalories(int pearNum) { 10 | return pearNum * 50; 11 | } 12 | 13 | @Override 14 | public String getPearDesc(int pearType) { 15 | return "Big pear!"; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /moduleexportlib/src/main/java/wang/imallen/blog/moduleexportlib/cherry/IDeliverCherry.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.moduleexportlib.cherry; 2 | 3 | import java.util.List; 4 | 5 | //import wang.imallen.blog.serviceannotation.Remote; 6 | 7 | /** 8 | * Created by wangallen on 2018/1/8. 9 | */ 10 | //@Remote 11 | public interface IDeliverCherry { 12 | 13 | List getCherries(int userId); 14 | 15 | //void sendCherry(int saleId, List cherries); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /cherrymodule/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Andromeda-Lib/upload.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.novoda.bintray-release' 2 | 3 | def libDesc='A lightweight library to make Android IPC convenient' 4 | def libLicense='BSD 3-Clause' 5 | 6 | publish{ 7 | repoName="starbridge" 8 | userOrg='allenwang' 9 | groupId='org.qiyi.video.svg' 10 | artifactId='core' 11 | publishVersion=maven_config.version_name 12 | desc="$libDesc" 13 | } 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Andromeda-Plugin/upload.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.novoda.bintray-release' 2 | 3 | def libDesc='A lightweight library to make Android IPC convenient' 4 | def libLicense='BSD 3-Clause' 5 | 6 | publish{ 7 | repoName="starbridge" 8 | userOrg='allenwang' 9 | groupId='org.qiyi.video.svg' 10 | artifactId='plugin' 11 | publishVersion=maven_config.version_name 12 | desc="$libDesc" 13 | } 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /applemodule/src/main/res/layout/activity_debug_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_detail.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_test1.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /applemodule/src/main/res/layout/activity_inject_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/test/java/wang/imallen/blog/servicemanager/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.servicemanager; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() throws Exception { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } -------------------------------------------------------------------------------- /app/src/main/res/layout/pic_layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /applemodule/src/test/java/wang/imallen/blog/applemodule/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.applemodule; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() throws Exception { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } -------------------------------------------------------------------------------- /cherrymodule/src/test/java/wang/imallen/blog/cherrymodule/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.cherrymodule; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() throws Exception { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } -------------------------------------------------------------------------------- /Andromeda-Lib/src/test/java/wang/imallen/blog/servicemanagerlib/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.servicemanagerlib; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() throws Exception { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } -------------------------------------------------------------------------------- /moduleexportlib/src/test/java/wang/imallen/blog/moduleexportlib/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package wang.imallen.blog.moduleexportlib; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() throws Exception { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } -------------------------------------------------------------------------------- /app/src/main/res/layout/support_frag_layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /cherrymodule/src/main/res/layout/activity_use_remote_service_from_apple_module.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Andromeda-Lib/src/main/aidl/org/qiyi/video/svg/IRemoteTransfer.aidl: -------------------------------------------------------------------------------- 1 | // IServiceRegister.aidl 2 | package org.qiyi.video.svg; 3 | import org.qiyi.video.svg.event.Event; 4 | // Declare any non-default types here with import statements 5 | //由于主要是起一个转接的作用,所以取名Transfer 6 | interface IRemoteTransfer { 7 | //这个要加上oneway关键字比较好,反正我们又不需要返回值 8 | oneway void registerDispatcher(IBinder dispatcherBinder); 9 | //从Dispatcher发往各个进程,如果进程中有相应IBinder的缓存,则要马上清除 10 | oneway void unregisterRemoteService(String serviceCanonicalName); 11 | 12 | oneway void notify(in Event event); 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/layout/frag_layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | #3F51B5 8 | #303F9F 9 | 10 | #FF4081 11 | 12 | #0000 13 | 14 | #000 15 | 16 | #fff 17 | 18 | #999 19 | 20 | 21 | -------------------------------------------------------------------------------- /applemodule/src/main/res/layout/activity_event.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 |