Docker Hubにコンテナpushして拒否された時の対応
ローカルに作成していたDocker imageをDocker Hubにあげたいと思いpushしたところ拒否されました。 $ docker push docker_image:tag_name denied: requested access to the resource is denied denied: requested access to the resource is deniedが表示され、なんでやねんと思いつつも、ドキュメント曰くローカルに作成したimageはプッシュする前にimageにRE ...
Android Studioのアンインストール方法 [MacBook Pro]
以前使っていたMacBook Proが初期不良品なのか調子が悪く、Android Studioのアンインストールを度々行っていたのですが、 忘れやすいので備忘としてまとめておきます。 下記の対象のファイルとディレクトリを削除すれば綺麗に消えます。 rm -Rf /Applications/Android\ Studio.app rm -Rf ~/Library/Preferences/AndroidStudio* rm ~/Library/Preferences/com.google.android.st ...
セキュリティアップデートによるAndroid非推奨APIの権限変更?!
2020年3月時点でPixelシリーズにアップデートが入りました。 このタイミングで、音量無音化系のアプリで利用されていた非推奨APIが使用できなくなったので、Pixel4に使われているMotion Senseの実装周りの影響を受けたのかというのが初動の読みでした。 しかし何故かPixel3もこのアップデートの影響を受けて無音化系のアプリの一部が機能しなくなっています。 Motion Senseのせいかと思ったのはミスリードで下記のアップデート情報の調査内容とリンクを記載しました。 私も無音化アプリを自作 ...
Javaの正規表現を使用してRFC 5321に準拠したメールアドレスを確認する
RFC 5321:Simple Mail Transfer Protocol(SMTP)はメールサーバ間におけるメッセージの転送方式を定めた標準仕様です。 https://tools.ietf.org/html/rfc5321 RFC 5321に示されている記述は、ホスト名とIPアドレスの両方に関して考えると、過去であれば適していたと思いますが、現在の各サービスのメールアドレスの利用状況を見ると寛大すぎます。 真面目に書くと非常に長くなりメンテ出来るものではありません。 昔Andoidの内部ソースで使われ ...
RFC 5322に準拠させた正規表現 言語別
RFC5322で定義されている正規表現を、各言語の正規表現に変化させた形になります。 完全な電子メール正規表現は存在しないので、結局のところ何かの公式基準に従っていたとしても、自分が携わるサービスのルールによって使用可能文字のトレードオフが必要になるでしょう。 特にJavaは標準ライブラリが何らかの公式に準拠しているので、無理に正規表現を使わずそちらを使った方がいいと海外のナレッジサイトで昔から書かれています。 公式のRFC5322はこちら。 一般的なRFC5322 公式のEmail正規表現 (RFC 5 ...
Javaの正規表現を使用して有効なメールアドレスを確認する
メールアドレス形式の扱いはサービス単位で異なり、定まっていないので、メールアドレスの妥当性を判定する時に正規表現を使うことが多くなると思います。 基本的にはRFC5321かRFC5322、次点でRFC822に準拠したフォーマットが妥当だとは思いますが、すでに取得されているメールアドレスが存在するため、表記はサービス毎に見直し設定していく必要があります。 標準仕様の問題点は、言わずもがな既に世の中で使われているキャリアのメールアドレスに対応できないことです。 メールサーバの仕様や、携帯キャリアの独自ルールを ...
Androidの音量取得と音量設定
Androidアプリを触る際にメディアボリュームの現在値が必要だったのですが、音量取得のAPIを調べていると、何故か多くの場合STREAM_ALARM(STREAM_ALARMはアラームです)の取得サンプルが書かれているのですが、大体の場合取得したいのはメディアボリューム(media volume)だと思います。 メディアボリュームはAudioManager.STREAM_MUSICで取得可能です。 AudioManager audioManager = (AudioManager)getSystemSe ...
Android Studioのinstallation failed エラー
Android Studioでパッケージ構成を派手に変更したところ、application installation failedエラーが出るようになったのでエラー対応しました。 Failure [INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME: Invalid manifest package: must have at least one '.' separator] ビルド中にキャッシュが云々という警告と、上記のような警告がで出て困惑… エラーの内容は用はパッケージに階層 ...
Selenium webdriver 指定時間分処理を待たせる [Java]
以前社内で「webdriverは逐次sleepしなきゃいけないからいまいち」と言われたんですが、別に逐次sleepしても良いと思うけどなーと思いつつ、設定値を与えてある程度待たせる方法もあるのでSelenium webdriver Javaで適宜行える方法の記載です。 WebDriverWaitを利用すれば要素出現までの最大秒数まで待機させておくことが可能なので、これを利用してアイテム毎に待機メソッド作成しておくだけです。 WebDriverWaitの第二引数は秒数。 public staticvoid ...

![Android Studioのアンインストール方法 [MacBook Pro]](https://tech.firenium.com/wp-content/uploads/2022/03/android_studio_uninstall_mac_min-202x150.png)





