投稿

MAUIのiOSアプリで90717が発生する場合

イメージ
MAUIのiOSアプリで90717が発生する場合 MAUIのiOSアプリで90717が発生する場合 MAUI でアプリを構築し、いざ App Store Connect に送信しようとした際に、 90717 のエラーが発生して転送完了しないことがありました。 ネットで解決を方法を検索して、それを試してもうまく行かず、時間をかけすぎたことがあったので、備忘のためにブログに残したいと思います。 解決方法 ネットで解決方法を検索すると、 アプリアイコンの背景が透過 されていると発生するとのこと。 アイコンの元ファイルを確認したところ、透過していたので修正して再度ビルド、転送を実施。 しかし、同じく 90717 が発生して転送できませんでした。 何回かリビルドなどを繰り返してもうまく行かず、検索してもネイティブの情報しか出てこないため四苦八苦していたところ、Githubのissueに同じくMAUIで事象が発生している人を発見。 https://github.com/dotnet/maui/issues/11124#issuecomment-1304723081 上記リンクで回答されているのですが、csprojファイルのアプリアイコン部分の記述に Color を指定するだけでした。 <!-- App Icon --> <MauiIcon Include="Resources\AppIcon\appicon.svg" ForegroundFile="Resources\AppIcon\appiconfg.svg" Color="#000000" /> 「まさかこれだけで解決するなんて」と思っていましたが、colorを指定してビルド、app storeに転送したら無事完了しました! なんと、csprojファイルの指定をするだけだったと...

dotnetでTeamsのトランスクリプトを活用

dotnetでTeamsのトランスクリプトを活用 dotnetでTeamsのトランスクリプトを活用 仕事で Teams を使っている人は多いのではないでしょうか。 その流れでTeams会議を使っている可と思いますが、Teams会議には文字起こし機能「 トランスクリプト 」が存在します。 精度は少々残念ですが、自動的に作成してくれ、かつ話者ごとに分割して表示してくれます。 皆さんはこの トランスクリプト を活用したいと思ったことはないでしょうか。 できればトランスクリプトを議事録の作成に使いたいと思ったことはあると思います。しかし、ダウンロードできる Vttファイル は、そのままではデータ操作しにくいものです。 なので今回私はトランスクリプトを活用するべく、 Vttファイル を CSVファイル に変換し、かつフィラー除去(※)などを行えるライブラリを作成したので、ここで紹介したいと思います。 ※「あ、」や「えっと」などの不要語を取り除くこと 自作ライブラリ紹介 ライブラリはGitにアップしているので、ぜひ活用していただければと思います。(こう処理を変えるとよいなどのアドバイスいただけると嬉しいです。) ・ Transcript4CSV 基本的には使い方は README.md に記載してはいますが、こちらでもざっくり紹介します。 dllをプロジェクトに追加 Gitのリリースからdllをダウンロードしていただき、自分のプロジェクトに追加してください。 usingの追加 呼び出すファイルにusingを追加します。 using Transcript4CSV; ...

PowerAutomateでタスク再割り当てを実施する

イメージ
PowerAutomateでタスク再割り当てを実施する PowerAutomateでタスク再割り当てを実施する 以前、下記動画にて Power Automate でタスク割当をして Teams で連絡するフローを作成しました。 この動画のコメントにて、「担当者の再割当てをする方法」の確認がありました。 私も少し気になったので、上記動画で構築したものをベースに、新しく 担当者再割当てフロー を作成してみたいと思います。 フローの作成 今回のフローでポイントとなるのが、「再割当て依頼のメッセージをトリガーにする」ことです。 また、Teams内で再度案内をしたいので、「返信するためのスレッドIDを取得する」ことも意識していきます。 ※突貫で作成しているので、実際もっと効率良くできる方法はあるかもしれません。 キーワードが言及されたとき まずはフローのトリガーを作成していきます。 Teamsのチャネル内で再割当て依頼のメッセージを検知した際に起動させたいので、 自動化したクラウドフロー からTeamsで絞り込み、 キーワードが言及されたとき を設定します。 フロー編集画面においては、対象のキーワードやチャネルを指定していきます。 担当者の再割当て 動画でも紹介している方法で、担当者の再割当てを実施します。 ...

MAUIでCS8795が発生するときの解消方法

イメージ
MAUIでCS8795が発生する MAUIでCS8795が発生するときの解消方法 xamarin のサポートが終了を迎えるため、現在 MAUI への移行を進めているのですが、毎度毎度発生する下記のエラーについて対処をまとめたいと思います。 CS8795 部分メソッド ‘XXXXX’ にはアクセシビリティ修飾子が指定されているため、実装部分が必要です。 XamarinのDependencyServiceのように、同じメソッドでプラットフォームごとに処理を分ける方法を実装していると発生します。 Microsoftのページ通り に実装しても、なぜかエラーが発生するのです。。 ちなみにエラーが発生しますが、デバックモードであれば問題なく稼働しますが、リリースビルドをすると止まってしまいます。 これを今回は解消していきます。 ちなみにプラットフォーム別の処理を実装する方法は こちら が参考になります。 対象以外のプラットフォームを取り除く 方法としてはタイトル通りで、対象外のプラットフォームをコンパイル対象から外します。 なお、対象とするプラットフォームにはすべて実装できているものとします。 下記順番に実施していきます。(後半は念のため) プロジェクトのプロパティから取り除く 下記の通りプロジェクトのプロパティから、対象外のプラットフォームのチェックを外します。 .csprojからも取り除く .csprojからも下記のように対象外とするプロジェクトをコメントアウトします。 Platforms配下のフォルダを削除 ここまで...

protobufのバージョンエラーが再発する

protobufでエラーになる protobufのバージョンエラーが再発する 私は最近 Docker で開発を再開したのですが、 python のエラーが多々発生したのでその解消方法を紹介したいと思います。 TypeError: Descriptors cannot not be created directly. 特に悩まされたのが protobuf です。 pythonスクリプトを起動していると、下記のようなエラーが発生することがあると思います。 TypeError: Descriptors cannot not be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0. If you cannot immediately regenerate your protos, some other possible workarounds are: 1. Downgrade the protobuf package to 3.20.x or lower. 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower). エラー文言で検索をかけると、エラー文に表示されている通り、 protobuf のバージョンを下げたものを再インストールすることで解決したという記事が多く見つかります。 pip install protobuf==3.20.1 しかし私の環境ではなぜか解決せず、、 正確に言うと解決したのですが、偶に再発することがあったのです。 ...

PowerAutomteでCSVファイルを処理する

イメージ
PowerAutomteでCSVファイルを処理する PowerAutomteでCSVファイルを処理する データをエクスポートすると CSVファイル がダウンロードされることが多いと思います。 このCSVファイルを処理する際に、普通のプログラミング言語であれば容易に扱うことができますが、プログラムを動かせない環境もあるのではないでしょうか? そういったときに Power Automate のフローでもCSVファイルを処理できるようになれば、データ収集の自動化がはかどるので、今回はCSVファイルを処理するフローを作成していきたいと思います。 なお、念のためCSVファイルとは、「,(カンマ)」などでデータを区切っているファイルのことで、下記のようなファイルの中身になります。 "りんご","ぶどう","みかん" "アップル","グレープ","オレンジ" フローを作成していく では早速フローを作成していきます。 今回は手動的なトリガーにしたいので、SharePointの特定のフォルダにファイルが作成された際に起動するようにしておきます。 「 自動化したクラウドフロー 」から、SharePointの「 ファイルが作成されたとき(プロパティのみ) 」を選択します。なおフロー名は任意です。 トリガーの設定 CSVファイルを格納するフォルダを設定します。 ファイルコンテンツの取得 トリガーはあくまでプロパティしか取得できないので、ファイルの実態を取得する必要があります。 そのため、SharePointの「 フ...

C#でCSVファイルを読み込む

C#でCSVファイルを読み込む C#でCSVファイルを読み込む 皆さんは CSVファイル を読み込んでデータ処理をするとき、どのようにファイル読み込みを行っていますでしょうか。 通常は下記のようなサンプルを流用し、ファイルを1行ずつ読み込み、 Split関数 などで分割することが多いかと思います。 private static List ReadFile(string path) { List list = new List (); using (StreamReader sr = new StreamReader(path)) { string line = ""; while ((line = sr.ReadLine()) != null) { list.Add(line); } } return list; } しかし、 CSVファイル はカンマ区切りだからといって、 Split関数 で分割してもうまく行かない場合があるのです。 CSVファイルは下記のようにデータ1つ1つをダブルクォーテーションで囲い、この中にカンマが合った場合でもそれを区切り文字としては扱わず1つのデータ(文字列)として扱う場合があります。 "りんご","ぶどう","みかん,もも","かき" こういった場合に、カンマで Split関数 を使用してしまうと、意図しない場所でデータが区切られ、データの整合性が合わなくなることがあります。 なので今回は、1つのデータをダブルクォーテーションで囲ったケースでも正常に読み取れるように自作のクラスを作成していきたいと思います。 独学故、「もっとこうするべき」といった意見があれば是非ご連絡ください! 自作メソッドの作成 ...