diff --git a/app/build.gradle b/app/build.gradle index 55bac90..907bcaa 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -59,102 +59,9 @@ android { v2SigningEnabled false } -// iPlay50SE { -// storeFile file("keystore/iPlay50SE.keystore") -// storePassword "123456" -// keyAlias "iplay50se" -// keyPassword "123456" -// v1SigningEnabled true -// v2SigningEnabled true -// } - - U807 { - storeFile file("keystore/AllwinnerU807.jks") - storePassword "123456" - keyAlias "u807" - keyPassword "123456" - v2SigningEnabled false - } - - T1102 { - storeFile file("keystore/T1102.jks") - storePassword "123456" - keyAlias "t1102" - keyPassword "123456" - v1SigningEnabled true - v2SigningEnabled true - } - - iPlay50P { - storeFile file("keystore/iPlay50P.jks") - storePassword "123456" - keyAlias "iplay50p" - keyPassword "123456" - v1SigningEnabled true - v2SigningEnabled true - } } buildTypes { - iPlay50PDebug.initWith(debug) - iPlay50PDebug { - buildConfigField "String", "platform", '"T1102"' - versionNameSuffix "-debug" - debuggable true - signingConfig signingConfigs.iPlay50P - manifestPlaceholders = [ - AMAP_KEY: "aed54e2ec50c45151d17b512c9e4f34c" - ] - } - - iPlay50PRelease.initWith(release) - iPlay50PRelease { - buildConfigField "String", "platform", '"T1102"' - signingConfig signingConfigs.iPlay50P - manifestPlaceholders = [ - AMAP_KEY: "aed54e2ec50c45151d17b512c9e4f34c" - ] - } - - MTKT1102Debug.initWith(debug) - MTKT1102Debug { - buildConfigField "String", "platform", '"MTKT1102"' - versionNameSuffix "-debug" - debuggable true - signingConfig signingConfigs.T1102 - manifestPlaceholders = [ - AMAP_KEY: "aed54e2ec50c45151d17b512c9e4f34c" - ] - } - - MTKT1102Release.initWith(release) - MTKT1102Release { - buildConfigField "String", "platform", '"MTKT1102"' - signingConfig signingConfigs.T1102 - manifestPlaceholders = [ - AMAP_KEY: "aed54e2ec50c45151d17b512c9e4f34c" - ] - } - - U807Debug.initWith(debug) - U807Debug { - versionNameSuffix "-debug" - debuggable true - signingConfig signingConfigs.U807 - buildConfigField "String", "platform", '"U807"' - manifestPlaceholders = [ - AMAP_KEY: "8200776fc8cad995184a9a3a17a552e4" - ] - } - - U807Release.initWith(release) - U807Release { - signingConfig signingConfigs.U807 - buildConfigField "String", "platform", '"U807"' - manifestPlaceholders = [ - AMAP_KEY: "8200776fc8cad995184a9a3a17a552e4" - ] - } debug { versionNameSuffix "-debug" @@ -170,7 +77,7 @@ android { variant.outputs.each { output -> if (outputFile != null) { // def app_name = getResValues().get("app_name").value - def fileName = "${appName()}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk" + def fileName = "${appName()}_${variant.versionCode}_V${variant.versionName}_${releaseTime()}_${buildType.name}.apk" output.outputFileName = fileName } } @@ -195,7 +102,7 @@ android { def outputFile = "" if (outputFile != null) { // def app_name = getResValues().get("app_name").value - def fileName = "${appName()}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk" + def fileName = "${appName()}_${variant.versionCode}_V${variant.versionName}_${releaseTime()}_${buildType.name}.apk" output.outputFileName = new File(outputFile, fileName) } } diff --git a/app/keystore/AllwinnerU807.jks b/app/keystore/AllwinnerU807.jks deleted file mode 100644 index c8d68c5..0000000 Binary files a/app/keystore/AllwinnerU807.jks and /dev/null differ diff --git a/app/keystore/T1102.jks b/app/keystore/T1102.jks deleted file mode 100644 index 3a3ee1d..0000000 Binary files a/app/keystore/T1102.jks and /dev/null differ diff --git a/app/keystore/iPlay50P.jks b/app/keystore/iPlay50P.jks deleted file mode 100644 index 496ef8d..0000000 Binary files a/app/keystore/iPlay50P.jks and /dev/null differ diff --git a/app/keystore/iPlay50SE.keystore b/app/keystore/iPlay50SE.keystore deleted file mode 100644 index 57f2521..0000000 Binary files a/app/keystore/iPlay50SE.keystore and /dev/null differ diff --git a/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl b/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl deleted file mode 100644 index 422184a..0000000 --- a/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl +++ /dev/null @@ -1,21 +0,0 @@ -// SystemInfoInterface.aidl -package com.aoleyun.sn; - -// Declare any non-default types here with import statements - -interface SystemInfoInterface { - /** - * Demonstrates some basic types that you can use as parameters - * and return values in AIDL. - */ - void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat, - double aDouble, String aString); - - String getSerial(); - List getHideIcon(); - List getDisableIcon(); - String getTopAppPackage(); - boolean SystemPutInt(String name, int value); - void setDefaultDesktop(String pkg); - List getDisableApp(); -} diff --git a/app/src/main/aidl/com/uiui/zy/IGetInfoInterface.aidl b/app/src/main/aidl/com/uiui/zy/IGetInfoInterface.aidl new file mode 100644 index 0000000..751530a --- /dev/null +++ b/app/src/main/aidl/com/uiui/zy/IGetInfoInterface.aidl @@ -0,0 +1,44 @@ +// IGetInfoInterface.aidl +package com.uiui.zy; + +// Declare any non-default types here with import statements + +interface IGetInfoInterface { + /** + * Demonstrates some basic types that you can use as parameters + * and return values in AIDL. + */ + void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat, + double aDouble, String aString); + + //获取sn + String getSerial(); + //获取mac作为sn + String getPushMac(); + //是否激活 + boolean SnIsActivation(); + //获取激活码 + String getActivationCode(); + //设置为默认桌面 + void setDefaultLauncher(String pkg); + //退出桌面 + void exitDesktop(); + //能否退出桌面 + boolean isReturnAndroid(); + //模拟返回键 + void keyBack(); + //获取定位结果 + String getMapResult(); + //获取应用使用时长 + String getAppUsedStatistics(); + //使用第三方应用 + boolean showThirdApp(); + //获取应用市场app + List getAdminApp(); + //写入系统数据 + boolean putSecureInt(String key, int value); + //写入系统数据 + boolean putSystemInt(String key, int value); + //写入系统数据 + boolean putSystemFloat(String key, float value); +} diff --git a/app/src/main/java/com/xuexispace/ai/activity/main/MainActivity.java b/app/src/main/java/com/xuexispace/ai/activity/main/MainActivity.java index dcf3516..82bfb21 100644 --- a/app/src/main/java/com/xuexispace/ai/activity/main/MainActivity.java +++ b/app/src/main/java/com/xuexispace/ai/activity/main/MainActivity.java @@ -59,20 +59,6 @@ public class MainActivity extends BaseMvvmActivity mFragments; - - private UserFragment mUserFragment; - private SubjectFragment mSubjectFragment; - - private int defaultCurrent = 1; - - private AppUpdateInfo mAppUpdateInfo; - @Override public void onRemoteConnected() { Log.e(TAG, "onConnected: "); @@ -113,97 +99,8 @@ public class MainActivity extends BaseMvvmActivity(); - mUserFragment = new UserFragment(); - if (!mUserFragment.isAdded()) { - mFragments.add(mUserFragment); - } - mSubjectFragment = new SubjectFragment(); - if (!mSubjectFragment.isAdded()) { - mFragments.add(mSubjectFragment); - } - mBaseFragmentPagerAdapter = new BaseFragmentPagerAdapter(mFragmentManager, mFragments); - mViewDataBinding.viewPager.setAdapter(mBaseFragmentPagerAdapter); - mViewDataBinding.viewPager.setCurrentItem(defaultCurrent); - scaleCircleNavigator = new ScaleCircleNavigator(this); - scaleCircleNavigator.setCircleCount(1 + mSubjectFragment.getFragmentSize()); - scaleCircleNavigator.setNormalCircleColor(getResources().getColor(R.color.normal_circle)); - scaleCircleNavigator.setSelectedCircleColor(getResources().getColor(R.color.selected_circle)); - scaleCircleNavigator.setCircleClickListener(new ScaleCircleNavigator.OnCircleClickListener() { - @Override - public void onClick(int index) { - - } - }); - - mViewDataBinding.magicIndicator.setNavigator(scaleCircleNavigator); -// ViewPagerHelper.bind(mMagicIndicator, mViewPager); - mSubjectFragment.setPageChangeListener(new ViewPager.OnPageChangeListener() { - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { -// Log.e("mSubjectFragment", "onPageScrolled: position = " + position + " positionOffset = " + positionOffset + " positionOffsetPixels = " + positionOffsetPixels); - mViewDataBinding.magicIndicator.onPageScrolled(position + 1, positionOffset, positionOffsetPixels); - } - - @Override - public void onPageSelected(int position) { -// Log.e("mSubjectFragment", "onPageSelected: position = " + position); - mViewDataBinding.magicIndicator.onPageSelected(position + 1); - } - - @Override - public void onPageScrollStateChanged(int state) { -// Log.e("mSubjectFragment", "onPageSelected: state = " + state); - mViewDataBinding.magicIndicator.onPageScrollStateChanged(state); - } - }); - mViewDataBinding.viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { -// Log.e("mViewPager", "onPageScrolled: position = " + position + " positionOffset = " + positionOffset + " positionOffsetPixels = " + positionOffsetPixels); - if (!(position == 1 && positionOffsetPixels == 0)) { - if (position <= 1) { - mViewDataBinding.magicIndicator.onPageScrolled(position, positionOffset, positionOffsetPixels); - } - } - } - - @Override - public void onPageSelected(int position) { -// Log.e("mViewPager", "onPageSelected: position = " + position); - if (position <= 1) { - mViewDataBinding.magicIndicator.onPageSelected(position); - } - } - - @Override - public void onPageScrollStateChanged(int state) { -// Log.e("mViewPager", "onPageSelected: state = " + state); - mViewDataBinding.magicIndicator.onPageScrollStateChanged(state); - } - }); - - if (mFragments.size() > 1) { - mViewDataBinding.viewPager.setCurrentItem(defaultCurrent); - mViewDataBinding.magicIndicator.onPageSelected(defaultCurrent); - } -// ComponentName cn = new ComponentName("com.jxw.mskt.video", "com.jxw.mskt.video.VideoDownload"); -// Intent intent = new Intent(); -// intent.setComponent(cn); -// intent.putExtra("type", "新东方专区"); -// intent.putExtra("isCourse", false); -// intent.putExtra("id", 23151); -// intent.putExtra("name", "西游记"); -// intent.addCategory(Intent.CATEGORY_LAUNCHER); -// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); -// try { -// startActivity(intent); -// } catch (Exception e) { -// Log.e(TAG, "openPackageWithArgs: " + e.getMessage()); -// } Intent intent = new Intent(MainActivity.this, SocketService.class); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { startForegroundService(intent); @@ -287,29 +184,13 @@ public class MainActivity extends BaseMvvmActivity mFragments; private FragmentManager mFragmentManager; @@ -104,7 +104,7 @@ public class SubjectFragment extends BaseDataBindingFragment> getsnInfoControl() { - return mRetrofit.create(SNInfoApi.class) + return mRetrofit.create(SnInfoApi.class) .getsninfo(RemoteManager.getInstance().getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable> getUserAvatarInfoControl() { - return mRetrofit.create(UserInfoControl.class) + return mRetrofit.create(SnInfoApi.class) .getUserAvatarInfo(RemoteManager.getInstance().getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); @@ -264,7 +237,7 @@ public class NetInterfaceManager { public Observable getUpdateInfoObservable(Map params) { String json = GsonUtils.toJSONString(params); RequestBody body = convertToJsonRequestBody(json); - return mRetrofit.create(UpdateInfoControl.class) + return mRetrofit.create(SnInfoApi.class) .updateUserInfo(body) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); @@ -273,28 +246,28 @@ public class NetInterfaceManager { public Observable getUpdateInfoObservable(Map params, MultipartBody.Part multipartBody) { String json = GsonUtils.toJSONString(params); RequestBody requestBody = convertToJsonRequestBody(json); - return mRetrofit.create(UpdateInfoControl.class) + return mRetrofit.create(SnInfoApi.class) .updateUserInfo(requestBody, multipartBody) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable getRunningAppObservable(String json) { - return mRetrofit.create(RunNewApp.class) + return mRetrofit.create(AppUsageRecordApi.class) .sendRunningInfo(RemoteManager.getInstance().getSerial(), json) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable> getCloudLessonObservable() { - return mRetrofit.create(CloudLessonApi.class) + return mRetrofit.create(SettingApi.class) .getCloudLessonSetting(RemoteManager.getInstance().getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable> getCloudLessonAppObservable() { - return mRetrofit.create(CloudLessonAppApi.class) + return mRetrofit.create(SettingApi.class) .getCloudLessonApp(RemoteManager.getInstance().getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); @@ -309,21 +282,21 @@ public class NetInterfaceManager { } public Observable getUpdateAlarmObservable(int id) { - return mRetrofit.create(UpdateAlarmClockApi.class) + return mRetrofit.create(AlarmClockApi.class) .updateAlarm(RemoteManager.getInstance().getSerial(), id) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable> getStudyStatObservable() { - return mRetrofit.create(StudyStatApi.class) + return mRetrofit.create(SnInfoApi.class) .getStudyStat(RemoteManager.getInstance().getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable getUpdateAddressObservable(String address, double longitude, double latitude) { - return mRetrofit.create(UpdateAddressApi.class) + return mRetrofit.create(SnInfoApi.class) .updateAddress(RemoteManager.getInstance().getSerial(), address, longitude, latitude) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); @@ -337,21 +310,21 @@ public class NetInterfaceManager { } public Observable>> getHomeworkObservable() { - return mRetrofit.create(GetHomeworkApi.class) + return mRetrofit.create(HomeworkApi.class) .getHomeworks(RemoteManager.getInstance().getSerial()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable> getHomeworkDetailObservable(int id) { - return mRetrofit.create(HomeworkDetailApi.class) + return mRetrofit.create(HomeworkApi.class) .getHomeworkDetail(RemoteManager.getInstance().getSerial(), id) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } public Observable getHomeworkUpdateObservable(int id) { - return mRetrofit.create(HomeworkUpdateApi.class) + return mRetrofit.create(HomeworkApi.class) .updateHomework(RemoteManager.getInstance().getSerial(), id) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); diff --git a/app/src/main/java/com/xuexispace/ai/network/api/AlarmClockApi.java b/app/src/main/java/com/xuexispace/ai/network/api/AlarmClockApi.java index 20e94dd..68ae1d6 100644 --- a/app/src/main/java/com/xuexispace/ai/network/api/AlarmClockApi.java +++ b/app/src/main/java/com/xuexispace/ai/network/api/AlarmClockApi.java @@ -7,7 +7,10 @@ import com.xuexispace.ai.network.UrlAddress; import java.util.List; import io.reactivex.rxjava3.core.Observable; +import retrofit2.http.Field; +import retrofit2.http.FormUrlEncoded; import retrofit2.http.GET; +import retrofit2.http.POST; import retrofit2.http.Query; public interface AlarmClockApi { @@ -15,4 +18,11 @@ public interface AlarmClockApi { Observable>> getAlarmClock( @Query("sn") String sn ); + + @FormUrlEncoded + @POST(UrlAddress.UPDATE_ALARM_CLOCK) + Observable updateAlarm( + @Field("sn") String sn, + @Field("id") int id + ); } diff --git a/app/src/main/java/com/xuexispace/ai/network/api/AppUsageRecordApi.java b/app/src/main/java/com/xuexispace/ai/network/api/AppUsageRecordApi.java index 2544421..4576c04 100644 --- a/app/src/main/java/com/xuexispace/ai/network/api/AppUsageRecordApi.java +++ b/app/src/main/java/com/xuexispace/ai/network/api/AppUsageRecordApi.java @@ -9,6 +9,13 @@ import retrofit2.http.FormUrlEncoded; import retrofit2.http.POST; public interface AppUsageRecordApi { + @FormUrlEncoded + @POST(UrlAddress.RUN_NEW_APP) + Observable sendRunningInfo( + @Field("sn") String sn, + @Field("app") String app + ); + @FormUrlEncoded @POST(UrlAddress.APP_USAGE_RECORD) Observable sendappUsageRecord( diff --git a/app/src/main/java/com/xuexispace/ai/network/api/CloudLessonApi.java b/app/src/main/java/com/xuexispace/ai/network/api/CloudLessonApi.java deleted file mode 100644 index 35705cb..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/CloudLessonApi.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.LessonSetting; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface CloudLessonApi { - @GET(UrlAddress.GET_CLOUD_LESSON) - Observable> getCloudLessonSetting( - @Query("sn") String sn - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/CloudLessonAppApi.java b/app/src/main/java/com/xuexispace/ai/network/api/CloudLessonAppApi.java deleted file mode 100644 index 7427582..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/CloudLessonAppApi.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.LessonApp; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface CloudLessonAppApi { - @GET(UrlAddress.GET_CLOUD_LESSON_APP) - Observable> getCloudLessonApp( - @Query("sn") String sn - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/GetHomeworkApi.java b/app/src/main/java/com/xuexispace/ai/network/api/GetHomeworkApi.java deleted file mode 100644 index c30b6b0..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/GetHomeworkApi.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.HomeworkBean; -import com.xuexispace.ai.network.UrlAddress; - -import java.util.ArrayList; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface GetHomeworkApi { - @GET(UrlAddress.GET_HOMEWORK) - Observable>> getHomeworks( - @Query("sn") String sn - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/HomeworkApi.java b/app/src/main/java/com/xuexispace/ai/network/api/HomeworkApi.java new file mode 100644 index 0000000..f83a7ae --- /dev/null +++ b/app/src/main/java/com/xuexispace/ai/network/api/HomeworkApi.java @@ -0,0 +1,34 @@ +package com.xuexispace.ai.network.api; + +import com.xuexispace.ai.bean.BaseResponse; +import com.xuexispace.ai.bean.HomeworkBean; +import com.xuexispace.ai.network.UrlAddress; + +import java.util.ArrayList; + +import io.reactivex.rxjava3.core.Observable; +import retrofit2.http.Field; +import retrofit2.http.FormUrlEncoded; +import retrofit2.http.GET; +import retrofit2.http.POST; +import retrofit2.http.Query; + +public interface HomeworkApi { + @GET(UrlAddress.GET_HOMEWORK) + Observable>> getHomeworks( + @Query("sn") String sn + ); + + @GET(UrlAddress.GET_HOMEWORK_DETAIL) + Observable> getHomeworkDetail( + @Query("sn") String sn, + @Query("id") int id + ); + + @FormUrlEncoded + @POST(UrlAddress.GET_HOMEWORK_UPDATE) + Observable updateHomework( + @Field("sn") String sn, + @Field("id") int id + ); +} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/HomeworkDetailApi.java b/app/src/main/java/com/xuexispace/ai/network/api/HomeworkDetailApi.java deleted file mode 100644 index a74b0f2..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/HomeworkDetailApi.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.HomeworkBean; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface HomeworkDetailApi { - @GET(UrlAddress.GET_HOMEWORK_DETAIL) - Observable> getHomeworkDetail( - @Query("sn") String sn, - @Query("id") int id - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/HomeworkUpdateApi.java b/app/src/main/java/com/xuexispace/ai/network/api/HomeworkUpdateApi.java deleted file mode 100644 index 50e27c6..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/HomeworkUpdateApi.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.Field; -import retrofit2.http.FormUrlEncoded; -import retrofit2.http.POST; - -public interface HomeworkUpdateApi { - @FormUrlEncoded - @POST(UrlAddress.GET_HOMEWORK_UPDATE) - Observable updateHomework( - @Field("sn") String sn, - @Field("id") int id - ); - -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/RunNewApp.java b/app/src/main/java/com/xuexispace/ai/network/api/RunNewApp.java deleted file mode 100644 index b92eec6..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/RunNewApp.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.Field; -import retrofit2.http.FormUrlEncoded; -import retrofit2.http.POST; - -public interface RunNewApp { - @FormUrlEncoded - @POST(UrlAddress.RUN_NEW_APP) - Observable sendRunningInfo( - @Field("sn") String sn, - @Field("app") String app - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/SNInfoApi.java b/app/src/main/java/com/xuexispace/ai/network/api/SNInfoApi.java deleted file mode 100644 index 1eb517c..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/SNInfoApi.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.SnInfo; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface SNInfoApi { - @GET(UrlAddress.SNINFO) - Observable> getsninfo( - @Query("sn") String sn - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/SettingApi.java b/app/src/main/java/com/xuexispace/ai/network/api/SettingApi.java index 8d02305..9855df3 100644 --- a/app/src/main/java/com/xuexispace/ai/network/api/SettingApi.java +++ b/app/src/main/java/com/xuexispace/ai/network/api/SettingApi.java @@ -1,6 +1,8 @@ package com.xuexispace.ai.network.api; import com.xuexispace.ai.bean.BaseResponse; +import com.xuexispace.ai.bean.LessonApp; +import com.xuexispace.ai.bean.LessonSetting; import com.xuexispace.ai.bean.SystemSettings; import com.xuexispace.ai.network.UrlAddress; @@ -9,6 +11,16 @@ import retrofit2.http.GET; import retrofit2.http.Query; public interface SettingApi { + @GET(UrlAddress.GET_CLOUD_LESSON) + Observable> getCloudLessonSetting( + @Query("sn") String sn + ); + + @GET(UrlAddress.GET_CLOUD_LESSON_APP) + Observable> getCloudLessonApp( + @Query("sn") String sn + ); + @GET(UrlAddress.GET_SETTINGS) Observable> getSetting( @Query("sn") String sn diff --git a/app/src/main/java/com/xuexispace/ai/network/api/SnInfoApi.java b/app/src/main/java/com/xuexispace/ai/network/api/SnInfoApi.java new file mode 100644 index 0000000..a045771 --- /dev/null +++ b/app/src/main/java/com/xuexispace/ai/network/api/SnInfoApi.java @@ -0,0 +1,56 @@ +package com.xuexispace.ai.network.api; + +import com.xuexispace.ai.bean.BaseResponse; +import com.xuexispace.ai.bean.SnInfo; +import com.xuexispace.ai.bean.StudyStatBean; +import com.xuexispace.ai.bean.UserAvatarInfo; +import com.xuexispace.ai.network.UrlAddress; + +import io.reactivex.rxjava3.core.Observable; +import okhttp3.MultipartBody; +import okhttp3.RequestBody; +import retrofit2.http.Body; +import retrofit2.http.Field; +import retrofit2.http.FormUrlEncoded; +import retrofit2.http.GET; +import retrofit2.http.Multipart; +import retrofit2.http.POST; +import retrofit2.http.Part; +import retrofit2.http.Query; + +public interface SnInfoApi { + @GET(UrlAddress.SNINFO) + Observable> getsninfo( + @Query("sn") String sn + ); + + @FormUrlEncoded + @POST(UrlAddress.GET_USER_AVATAR_INFO) + Observable> getUserAvatarInfo( + @Field("sn") String sn + ); + + @POST(UrlAddress.UPDATE_INFO) + Observable updateUserInfo(@Body RequestBody requestBody); + + @Multipart + @POST(UrlAddress.UPDATE_INFO) + Observable updateUserInfo( + @Body RequestBody requestBody, + @Part MultipartBody.Part body); + + @GET(UrlAddress.GET_STUDY_STAT) + Observable> getStudyStat( + @Query("sn") String sn + ); + + @FormUrlEncoded + @POST(UrlAddress.UPDATE_ADDRESS) + Observable updateAddress( + @Field("sn") String sn, + @Field("address") String address, + @Field("longitude") double longitude, + @Field("latitude") double latitude + ); + +} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/StudyStatApi.java b/app/src/main/java/com/xuexispace/ai/network/api/StudyStatApi.java deleted file mode 100644 index 7675bf1..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/StudyStatApi.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.StudyStatBean; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.GET; -import retrofit2.http.Query; - -public interface StudyStatApi { - @GET(UrlAddress.GET_STUDY_STAT) - Observable> getStudyStat( - @Query("sn") String sn - ); -} \ No newline at end of file diff --git a/app/src/main/java/com/xuexispace/ai/network/api/UpdateAddressApi.java b/app/src/main/java/com/xuexispace/ai/network/api/UpdateAddressApi.java deleted file mode 100644 index 6290c7f..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/UpdateAddressApi.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.Field; -import retrofit2.http.FormUrlEncoded; -import retrofit2.http.POST; - -public interface UpdateAddressApi { - @FormUrlEncoded - @POST(UrlAddress.UPDATE_ADDRESS) - Observable updateAddress( - @Field("sn") String sn, - @Field("address") String address, - @Field("longitude") double longitude, - @Field("latitude") double latitude - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/UpdateAlarmClockApi.java b/app/src/main/java/com/xuexispace/ai/network/api/UpdateAlarmClockApi.java deleted file mode 100644 index c8f1dc0..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/UpdateAlarmClockApi.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.Field; -import retrofit2.http.FormUrlEncoded; -import retrofit2.http.POST; - -public interface UpdateAlarmClockApi { - @FormUrlEncoded - @POST(UrlAddress.UPDATE_ALARM_CLOCK) - Observable updateAlarm( - @Field("sn") String sn, - @Field("id") int id - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/UpdateInfoControl.java b/app/src/main/java/com/xuexispace/ai/network/api/UpdateInfoControl.java deleted file mode 100644 index 64bdcd8..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/UpdateInfoControl.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import okhttp3.MultipartBody; -import okhttp3.RequestBody; -import retrofit2.http.Body; -import retrofit2.http.Multipart; -import retrofit2.http.POST; -import retrofit2.http.Part; - -public interface UpdateInfoControl { - @POST(UrlAddress.UPDATE_INFO) - Observable updateUserInfo(@Body RequestBody requestBody); - - @Multipart - @POST(UrlAddress.UPDATE_INFO) - Observable updateUserInfo( - @Body RequestBody requestBody, - @Part MultipartBody.Part body); -} diff --git a/app/src/main/java/com/xuexispace/ai/network/api/UserInfoControl.java b/app/src/main/java/com/xuexispace/ai/network/api/UserInfoControl.java deleted file mode 100644 index 101435c..0000000 --- a/app/src/main/java/com/xuexispace/ai/network/api/UserInfoControl.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.xuexispace.ai.network.api; - -import com.xuexispace.ai.bean.BaseResponse; -import com.xuexispace.ai.bean.UserAvatarInfo; -import com.xuexispace.ai.network.UrlAddress; - -import io.reactivex.rxjava3.core.Observable; -import retrofit2.http.Field; -import retrofit2.http.FormUrlEncoded; -import retrofit2.http.POST; - -public interface UserInfoControl { - @FormUrlEncoded - @POST(UrlAddress.GET_USER_AVATAR_INFO) - Observable> getUserAvatarInfo( - @Field("sn") String sn - ); -} diff --git a/app/src/main/java/com/xuexispace/ai/utils/Utils.java b/app/src/main/java/com/xuexispace/ai/utils/Utils.java index 575bd3e..8cb21ca 100644 --- a/app/src/main/java/com/xuexispace/ai/utils/Utils.java +++ b/app/src/main/java/com/xuexispace/ai/utils/Utils.java @@ -399,4 +399,21 @@ public class Utils { } return builder.toString(); } + + public static String getCacheDir(Context context) { + String cachePath; + if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()) + || !Environment.isExternalStorageRemovable()) { + if (context.getExternalCacheDir() != null) { + cachePath = context.getExternalCacheDir().getPath(); + } else if (context.getExternalFilesDir("cache") != null) { + cachePath = context.getExternalFilesDir("cache").getPath(); + } else { + cachePath = context.getCacheDir().getPath(); + } + } else { + cachePath = context.getCacheDir().getPath(); + } + return cachePath; + } } diff --git a/app/src/main/res/drawable-hdpi/applet_qrcode.png b/app/src/main/res/drawable-hdpi/applet_qrcode.png index e7a0349..d8d6b29 100644 Binary files a/app/src/main/res/drawable-hdpi/applet_qrcode.png and b/app/src/main/res/drawable-hdpi/applet_qrcode.png differ diff --git a/app/src/main/res/drawable-hdpi/wechat_bind_process.png b/app/src/main/res/drawable-hdpi/wechat_bind_process.png index 7bbfd7f..c66c396 100644 Binary files a/app/src/main/res/drawable-hdpi/wechat_bind_process.png and b/app/src/main/res/drawable-hdpi/wechat_bind_process.png differ diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index c5a79b5..a056e5c 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -20,25 +20,16 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - - - + android:onClick="@{click::open2}" + android:visibility="gone"> + android:visibility="gone"> - 学习精灵 + 学习空间 隐私协议 服务协议和隐私政策 \t\t\t\t请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了向你提供即时通讯,内容分享等服务,