私はAndroidの見習いです。ランダムなUUIDを作成し、主キーとしてデータベースに保存する必要があります。 ButtonクリックイベントでこのコードをUUID.randomUUID.toString()を利用しています。 UUIDは事実上興味深いものになりました。それでも、ボタンをもう一度クリックした場合は、別のUUIDを作成する必要があります。いずれにせよ、私のコードは新しいUUIDを作成していません。誰か、catchをクリックしたときに不規則なUUIDを作成するのを手伝ってください。
ここに私のコードがあります:
String uniqueId = null;
showRandomId = (Button)findViewById(R.id.showUUID);
showRandomId.setOnClickListener(new View.OnClickListener() {
public void OnClick(View v) {
if(uniqueId == null) {
uniqueId = UUID.randomUUID().toString();
}
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(getBaseContext(), uniqueId, duration);
toast.show();
}
});
最初に変数を初期化し、次にボタンをクリックしたときにnull値を取得しません
これからif条件を削除
if(uniqueId == null) {
uniqueId = UUID.randomUUID().toString();
}
これを使って
uniqueId = UUID.randomUUID().toString();
uniqueId
のnullチェックが問題の原因です。
初めてボタンをクリックすると、uniqueId
がnullになり、新しいUUIDが生成されます。ただし、次にuniqueIdがnullでないときにクリックすると、新しいUUIDは生成されません。
次の方法で、新しいUUIDの作成を明示的に回避しています。
if(uniqueId == null) {
uniqueId = UUID.randomUUID().toString();
}
チェックを削除します。