version:1.5.5

fix:
update:对接通话白名单
This commit is contained in:
2025-04-15 09:31:40 +08:00
parent dc2db5b8f2
commit 167fee039a
7 changed files with 47 additions and 3 deletions

View File

@@ -12,6 +12,10 @@ interface IZkwlContactManager {
List<String> getAllBlockedContactNumbers();
void controlWhitelistContactEnable(boolean enable);
boolean getWhitelistContactEnableStatus();
void addWhitelistContactNumber(String phoneNumber);
void deleteWhitelistContactNumber(String phoneNumber);

View File

@@ -474,6 +474,7 @@ public class MainViewModel extends BaseViewModel<ActivityMainBinding, ActivityEv
mMMKV.encode(CommonConfig.HOURLY_TIME_SIGNAL_KEY, systemSettings.getHour_notify());
mMMKV.encode(CommonConfig.VOICE_SPEAKER_KEY, systemSettings.getVoice_speaker());
mMMKV.encode(CommonConfig.PHONE_WHITE_LIST, systemSettings.getPhone_white_list());
ContactManager.getInstance().controlWhitelistContactEnable(systemSettings.getPhone_white_list() == 1);
}
}

View File

@@ -2,6 +2,7 @@ package com.xxpatx.os.activity.phone;
import android.content.Context;
import android.telecom.TelecomManager;
import android.util.Log;
import android.view.View;
import androidx.recyclerview.widget.LinearLayoutManager;
@@ -73,8 +74,13 @@ public class WhiteListActivity extends BaseMvvmActivity<WhiteListViewModel, Acti
}
public void openWhiteList(View view) {
// int phone_white_list = mMMKV.decodeInt(CommonConfig.PHONE_WHITE_LIST, 0);
int phone_white_list = mMMKV.decodeInt(CommonConfig.PHONE_WHITE_LIST, 0);
ContactManager.getInstance().controlWhitelistContactEnable(phone_white_list != 1);
boolean enable = ContactManager.getInstance().getWhitelistContactEnableStatus();
Log.e(TAG, "openWhiteList: " + enable);
mMMKV.encode(CommonConfig.PHONE_WHITE_LIST, enable ? 1 : 0);
mViewDataBinding.setWhiteList(enable);
}
}
}

View File

@@ -123,4 +123,34 @@ public class ContactManager {
}
}
}
public void controlWhitelistContactEnable(boolean enable) {
if (mZkwlContactManager == null) {
Toaster.show("服务未连接");
bindService();
} else {
try {
mZkwlContactManager.controlWhitelistContactEnable(enable);
Log.e(TAG, "controlWhitelistContactEnable: " + enable);
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
public boolean getWhitelistContactEnableStatus() {
if (mZkwlContactManager == null) {
Toaster.show("服务未连接");
bindService();
} else {
try {
boolean enable = mZkwlContactManager.getWhitelistContactEnableStatus();
Log.e(TAG, "getWhitelistContactEnableStatus: " + enable);
return enable;
} catch (RemoteException e) {
e.printStackTrace();
}
}
return false;
}
}

View File

@@ -1181,6 +1181,7 @@ public class NetInterfaceManager {
mMMKV.encode("is_info", systemSettings.getIs_info());
String s = systemSettings.getSetting_sos();
mMMKV.encode(CommonConfig.PHONE_WHITE_LIST, systemSettings.getPhone_white_list());
ContactManager.getInstance().controlWhitelistContactEnable(systemSettings.getPhone_white_list() == 1);
} else {
mCacheHelper.put(UrlAddress.GET_SETTINGS, "");

View File

@@ -168,6 +168,7 @@ public class WeAccessibilityService extends AccessibilityService {
mCurrentStep = Step.WECHAT_HANDS_FREE;
Toast.makeText(this, "已自动接听视频/语音", Toast.LENGTH_LONG).show();
} else {
mCurrentStep = Step.WAITING;
// clickAnswer();
}
break;
@@ -582,6 +583,7 @@ public class WeAccessibilityService extends AccessibilityService {
return true;
} else {
Log.e(TAG, "handsFree: not found");
mCurrentStep = Step.WAITING;
return false;
}
}