diff --git a/aes/build.properties b/aes/build.properties index b2db752..f685fed 100644 --- a/aes/build.properties +++ b/aes/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Wed Nov 26 13:05:31 GMT 2025 +#Wed Nov 26 15:54:26 GMT 2025 stageCount=7 libraryProject=libaes baseVersion=15.11 publishVersion=15.11.6 -buildCount=27 +buildCount=32 baseBetaVersion=15.11.7 diff --git a/aes/src/main/java/cc/winboll/studio/aes/SettingsActivity.java b/aes/src/main/java/cc/winboll/studio/aes/SettingsActivity.java index 2962ba0..3a9a394 100644 --- a/aes/src/main/java/cc/winboll/studio/aes/SettingsActivity.java +++ b/aes/src/main/java/cc/winboll/studio/aes/SettingsActivity.java @@ -20,18 +20,19 @@ public class SettingsActivity extends Activity { super.onCreate(savedInstanceState); setContentView(R.layout.activity_settings); ADsControlView adsControlView = (ADsControlView) findViewById(R.id.ads_control_view); - adsControlView.setOnAdsModeSelectedListener(new ADsControlView.OnAdsModeSelectedListener() { - @Override - public void onModeSelected(ADsMode selectedMode) { - if (selectedMode == ADsMode.STANDALONE) { - // 处理单机模式逻辑(如释放米盟资源) - ToastUtils.show("STANDALONE"); - } else if (selectedMode == ADsMode.MIMO_SDK) { - // 处理米盟SDK模式逻辑(如初始化SDK) - ToastUtils.show("MIMO_SDK"); - } - } - }); + +// adsControlView.setOnAdsModeSelectedListener(new ADsControlView.OnAdsModeSelectedListener() { +// @Override +// public void onModeSelected(ADsMode selectedMode) { +// if (selectedMode == ADsMode.STANDALONE) { +// // 处理单机模式逻辑(如释放米盟资源) +// ToastUtils.show("STANDALONE"); +// } else if (selectedMode == ADsMode.MIMO_SDK) { +// // 处理米盟SDK模式逻辑(如初始化SDK) +// ToastUtils.show("MIMO_SDK"); +// } +// } +// }); } } diff --git a/libaes/build.properties b/libaes/build.properties index b2db752..f685fed 100644 --- a/libaes/build.properties +++ b/libaes/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Wed Nov 26 13:05:31 GMT 2025 +#Wed Nov 26 15:54:26 GMT 2025 stageCount=7 libraryProject=libaes baseVersion=15.11 publishVersion=15.11.6 -buildCount=27 +buildCount=32 baseBetaVersion=15.11.7 diff --git a/libaes/src/main/java/cc/winboll/studio/libaes/views/ADsControlView.java b/libaes/src/main/java/cc/winboll/studio/libaes/views/ADsControlView.java index facb44f..7039cb8 100644 --- a/libaes/src/main/java/cc/winboll/studio/libaes/views/ADsControlView.java +++ b/libaes/src/main/java/cc/winboll/studio/libaes/views/ADsControlView.java @@ -37,12 +37,15 @@ import cc.winboll.studio.libappbase.ToastUtils; public class ADsControlView extends LinearLayout { public static final String TAG = "ADsControlView"; - private static final String PRIVACY_FILE = "privacy_pfs"; - private static final String PRIVACY_VALUE = "privacy_value";//0: 拒绝,1:赞同 - + // SP存储配置 private static final String SP_NAME = "ads_control_config"; private static final String KEY_SELECTED_MODE = "selected_ads_mode"; + // 单机模式与米盟模式标志位 + ADsMode mADsMode; + private static final String PRIVACY_VALUE = "privacy_value"; + // 隐私协议签约结果 0: 拒绝,1:赞同 2: 未签约 + String privacyAgreeValue; // Handler消息标识 private static final int MSG_UPDATE_MODE = 1001; @@ -78,6 +81,26 @@ public class ADsControlView extends LinearLayout { initView(context); } + public void setPrivacyAgreeValue(String privacyAgreeValue) { + this.privacyAgreeValue = privacyAgreeValue; + } + + public String getPrivacyAgreeValue() { + String privacyAgreeValue = sharedPreferences.getString(PRIVACY_VALUE, "0"); + return privacyAgreeValue; + } + + public void setADsMode(ADsMode mADsMode) { + this.mADsMode = mADsMode; + sharedPreferences.edit().putString(KEY_SELECTED_MODE, this.mADsMode.name()).apply(); + } + + public ADsMode getADsMode() { + String savedModeStr = sharedPreferences.getString(KEY_SELECTED_MODE, ADsMode.STANDALONE.name()); + mADsMode = ADsMode.fromValue(savedModeStr); + return mADsMode; + } + /** * 初始化视图、SP、Handler */ @@ -101,51 +124,32 @@ public class ADsControlView extends LinearLayout { registerControlView(this); // 从SP读取初始模式并设置 - String savedModeStr = sharedPreferences.getString(KEY_SELECTED_MODE, ADsMode.STANDALONE.name()); - ADsMode savedMode = ADsMode.fromValue(savedModeStr); - setSelectedMode(savedMode); + ToastUtils.show(String.format("savedMode : %s", getADsMode().name())); + setSelectedMode(getADsMode()); // 单选组选择事件监听 rgAdsMode.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { if (checkedId == R.id.rb_standalone) { - cleanPrivacyStatus(context); + setADsMode(ADsMode.STANDALONE); } else if (checkedId == R.id.rb_mimo_sdk) { - verifyPrivacyPolicy(context, ADsMode.MIMO_SDK); + showPrivacy(context, new OnPrivacyChangeListener(){ + @Override + public void onAgreePrivacy() { + setADsMode(ADsMode.MIMO_SDK); + } + + @Override + public void onDisagreePrivacy() { + setADsMode(ADsMode.STANDALONE); + } + }); } } }); } - void verifyPrivacyPolicy(final Context context, ADsMode selectedMode) { - // 检查设定值,再调用隐私协议签署对话框。 - // 下面监听对话框会话结果,再最终确定选择单机还是广告SDK。 - if (selectedMode == ADsMode.MIMO_SDK) { - showPrivacy(context, new OnPrivacyChangeListener(){ - @Override - public void onAgreePrivacy() { - // 保存到SP - sharedPreferences.edit().putString(KEY_SELECTED_MODE, ADsMode.MIMO_SDK.name()).apply(); - // 触发外部监听 - if (listener != null) { - listener.onModeSelected(ADsMode.MIMO_SDK); - } - } - - @Override - public void onDisagreePrivacy() { - cleanPrivacyStatus(context); - // 触发外部监听 - if (listener != null) { - listener.onModeSelected(ADsMode.STANDALONE); - } - } - }); - } - } - - /** * 【静态】显示隐私协议弹窗(供外部调用,带Context参数) * @param context 上下文(需传入Activity Context,用于弹窗显示) @@ -169,8 +173,9 @@ public class ADsControlView extends LinearLayout { LogUtils.e(TAG, "showPrivacy: Activity is finishing or destroyed"); return; } + // 读取隐私协议状态并处理逻辑 - SharedPreferences sp = getPrivacySharedPreferences(context); + SbhhharedPreferences sp = getPrivacySharedPreferences(context); String privacyAgreeValue = sp.getString(PRIVACY_VALUE, null); handlePrivacyLogic(activity, privacyAgreeValue, onPrivacyChangeListener); }