Android 學習筆記 復制到剪切板|指紋使用
- 復制到剪貼板
- 指紋的簡單使用
復制到剪貼板
文本復制
/*
獲取clipboard service句柄
*/
ClipboardManager clipboard = (ClipboardManager)
context.getSystemService(Context.CLIPBOARD_SERVICE);
ClipData clip = ClipData.newPlainText("simple text", "你要復制的內容");
// 設定剪切板主要剪輯
clipboard.setPrimaryClip(clip);
其他使用方法使用
// 獲取clipboard service句柄
ClipboardManager clipboard = (ClipboardManager)
getSystemService(Context.CLIPBOARD_SERVICE);
// 復制文本
ClipData clip = ClipData.newPlainText("simple text", "Hello, World!");
// 創建Uri,本例中是聯系人記錄ID以及名稱URI
private static final String CONTACTS = "content://com.example.contacts";
private static final String COPY_PATH = "/copy";
Uri copyUri = Uri.parse(CONTACTS + COPY_PATH + "/" + lastName);
// 復制URI物件,使用匿名getContentResolver()物件從provider中獲取MIME型別
ClipData clip = ClipData.newUri(getContentResolver(), "URI", copyUri);
// 創建Intent
Intent appIntent = new Intent(this, com.example.demo.myapplication.class);
// 復制Intent物件,設定Intet
ClipData clip = ClipData.newIntent("Intent", appIntent);
// 設定剪切板主要剪輯
clipboard.setPrimaryClip(clip);
具體參考檔案
指紋的簡單使用
回呼方法如下,放到activity下
FingerprintManager.AuthenticationCallback mSelfCancelled;
{
mSelfCancelled = new FingerprintManager.AuthenticationCallback()
{
@Override
public void onAuthenticationError ( int errorCode, CharSequence errString )
{
// 驗證出錯回呼 指紋傳感器會關閉一段時間,在下次呼叫authenticate時,會出現禁用期(時間依廠商不同30,1分都有)
Toast.makeText(requireActivity(), errString, Toast.LENGTH_SHORT).show();
}
@Override
public void onAuthenticationHelp ( int helpCode, CharSequence helpString )
{
// 驗證幫助回呼
Toast.makeText(requireActivity(), helpString, Toast.LENGTH_SHORT).show();
}
@Override
public void onAuthenticationSucceeded ( FingerprintManager.AuthenticationResult result )
{ //驗證成功
Toast.makeText(requireActivity(), "指紋識別成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onAuthenticationFailed ()
{
// 驗證失敗 指紋驗證失敗后,指紋傳感器不會立即關閉指紋驗證,系統會提供5次重試的機會,即呼叫5次onAuthenticationFailed后,才會呼叫onAuthenticationError
Toast.makeText(requireActivity(), "指紋識別失敗", Toast.LENGTH_SHORT).show();
}
};
}
public void mida ( String string )
{
AlertDialog dialog = new AlertDialog.Builder(requireActivity())
.setTitle("通知")//設定對話框的標題
.setMessage(string)//設定對話框的內容
//設定對話框的按鈕
.setPositiveButton("收到", ( dialog1, which ) -> dialog1.dismiss()).create();
dialog.show();
}
/**
* 設備條件判斷
* - 設備是否支持指紋識別
* - 設備是否處于安全保護中(有指紋識別的手機,在使用指紋識別的時候,還需要強制設定密碼或者圖案解鎖,如果未設定的話是不許使用指紋識別的)
* - 設備是否已經注冊過指紋(如果用戶未使用過這個指紋技術,那么只能提示用戶到系統設定里面去設定)指紋識別API呼叫
*/
public boolean isFinger ()
{
//判斷當前手機版本
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M)
if (ActivityCompat.checkSelfPermission(requireActivity(),
Manifest.permission.USE_FINGERPRINT) != PackageManager.PERMISSION_GRANTED)
{
mida("沒有指紋識別權限");
return false;
}
//判斷硬體是否支持指紋識別
if (!manager.isHardwareDetected())
{
mida("沒有指紋識別模塊");
return false;
}
//判斷 是否開啟鎖屏密碼
if (!mKeyManager.isKeyguardSecure())
{
mida("沒有開啟鎖屏密碼,無法進行登錄驗證");
return false;
}
//判斷是否有指紋錄入
if (!manager.hasEnrolledFingerprints())
{
mida("沒有錄入指紋,無法進行登錄驗證");
return false;
}
return true;
}
使方法:使用方法:放到onCreate下
if (isFinger())
{
Intent intent = mKeyManager.createConfirmDeviceCredentialIntent("指紋驗證", "認證以授權訪問");
if (intent != null)
{
startActivityForResult(intent, REQUEST_CODE_CONFIRM_DEVICE_CREDENTIALS);
}
}
最后通過onActivityResult 回呼一下就行了
@Override
public void onActivityResult ( int requestCode, int resultCode, Intent data )
{
if (requestCode == REQUEST_CODE_CONFIRM_DEVICE_CREDENTIALS)
{
if (resultCode == Activity.RESULT_OK)
{
Toast.makeText(requireActivity(), "識別成功", Toast.LENGTH_SHORT).show();
} else
{
Toast.makeText(requireActivity(), "識別失敗", Toast.LENGTH_SHORT).show();
}
}
}
使用的變數:
private final static int REQUEST_CODE_CONFIRM_DEVICE_CREDENTIALS = 0;
參考檔案忘了在哪兒看了,抱歉
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/290115.html
標籤:其他
上一篇:uni-app 錯誤集合
下一篇:06 C語言檔案加解密
