| | |
| | | import android.os.Build; |
| | | import android.os.Bundle; |
| | | import android.os.CountDownTimer; |
| | | import android.support.annotation.NonNull; |
| | | import android.support.v4.app.ActivityCompat; |
| | | import android.support.v4.content.ContextCompat; |
| | | import android.text.TextUtils; |
| | | import android.util.DisplayMetrics; |
| | | import android.util.Log; |
| | |
| | | import android.widget.RelativeLayout; |
| | | import android.widget.TextView; |
| | | import android.widget.Toast; |
| | | |
| | | import androidx.annotation.NonNull; |
| | | import androidx.core.app.ActivityCompat; |
| | | import androidx.core.content.ContextCompat; |
| | | |
| | | import com.hdl.hdllinphonesdk.HDLLinphoneKit; |
| | | import com.hdl.hdllinphonesdk.R; |
| | |
| | | tv_lp_title.setText(titleName); |
| | | } |
| | | interphoneType = extras.getString("interphoneType"); |
| | | HDLLog.i(TAG, "initData interphoneType= " + interphoneType); |
| | | } |
| | | |
| | | //监听呼叫广播 |
| | |
| | | int id = view.getId(); |
| | | if (id == R.id.iv_lp_screenshot) { |
| | | //动态权限申请 |
| | | if (ContextCompat.checkSelfPermission(HDLLinphoneMonitorActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED |
| | | && ActivityCompat.checkSelfPermission(HDLLinphoneMonitorActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { |
| | | ActivityCompat.requestPermissions(HDLLinphoneMonitorActivity.this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1); |
| | | } else { |
| | | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { |
| | | //截图 |
| | | onClickScreenshot(); |
| | | } else { |
| | | if (ContextCompat.checkSelfPermission(HDLLinphoneMonitorActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED |
| | | && ActivityCompat.checkSelfPermission(HDLLinphoneMonitorActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { |
| | | ActivityCompat.requestPermissions(HDLLinphoneMonitorActivity.this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1); |
| | | } else { |
| | | //截图 |
| | | onClickScreenshot(); |
| | | } |
| | | } |
| | | } else if (id == R.id.iv_lp_unlock) { |
| | | //开锁 |
| | |
| | | * initLinphone |
| | | */ |
| | | void initLinphone() { |
| | | HDLLog.i(TAG, "initLinphone === "); |
| | | mCoreListener = new CoreListenerStub() { |
| | | @Override |
| | | public void onCallStateChanged(Core core, Call call, Call.State state, String message) { |
| | | HDLLog.i(TAG, "initLinphone onCallStateChanged state= " + state); |
| | | if (state == Call.State.End || state == Call.State.Released) { |
| | | // Once call is finished (end state), terminate the activity |
| | | // We also check for released state (called a few seconds later) just in case |