この問題を解決するのを手伝ってください。これは私のコードです
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
clipboard = (ClipboardManager)getSystemService(CLIPBOARD_SERVICE);
clipboard.addPrimaryClipChangedListener(this);
return START_STICKY;
}
@Override
public void onPrimaryClipChanged() {
Log.d("log",clipboard.getPrimaryClip()+"");
ClipData.Item item = clipboard.getPrimaryClip().getItemAt(0);
String clipText = item.getText().toString();
Log.d("log",clipText);
new SendClipBoardData().execute(postClipDataUrl,clipText);
}
時々エラーが発生しますClipData.Item item = clipboard.getPrimaryClip().getItemAt(0);
エラー:java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.String java.lang.CharSequence.toString()' on a null object reference
clipboard.getPrimaryClip()
戻りますが、ClipData { text/plain {NULL} }
コピーした同じテキストをメモに貼り付けると、テキストが表示され、問題を検出できず、機能しない場合もあります。
もう 1 つの質問は、コピーが正常に機能する場合、コピーされたテキスト結果を 2 回または 3 回取得していますが、イベントは 1 回しか機能していません。前もって感謝します。