Search This Blog

2025/02/09

Install Mobile Ads SDK (iOS) by cocoapods

Navigate to your project folder

Open a terminal and go to your project directory:

cd /path/to/your/project


Initialize the Podfile

Run the following command to create a Podfile:

pod init


Open the Podfile

Use a text editor or open it directly in the terminal:

open Podfile


Add the Google Mobile Ads SDK

Inside the Podfile, add this line under target 'YourApp' do:

pod 'Google-Mobile-Ads-SDK', '11.5.0'


Save and close the file

Install the pods with repo update, run the following command:

pod install --repo-update


Open the project using the generated .xcworkspace file

open YourProject.xcworkspace

2025/02/08

Install Homebrew and CocoaPods in xcode 14

I have an old MacBook (Early 2015) running macOS Monterey 12.7.6.

When I try to install CocoaPods via the command line, I get the following error:

securerandom requires Ruby version >= 3.1.0. The current Ruby version is 2.6.10.210.

I cannot update Ruby using gem update --system because macOS does not allow it.

So, I decided to use Homebrew to install CocoaPods instead.


Installing Homebrew

First, I checked if Homebrew was installed by running:

brew -v

However, this returned an error:

-bash: brew: command not found

To install Homebrew, I used the following command:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

During installation, I had to enter my password a few times.

Once the installation was complete, I verified it by running:

brew -v

The output confirmed that Homebrew was installed:

Homebrew 4.4.20

Installing CocoaPods

Now that Homebrew is installed, I was able to install CocoaPods using:

brew install cocoapods

Additionally, I was able to update Ruby and then use Ruby to install CocoaPods.

2025/01/17

music_generator by Python

Install

pip install numpy

pip install mido

pip install soundfile

pip install streamlit


Code
import numpy as np
import soundfile as sf
import streamlit as st
from mido import Message, MidiFile, MidiTrack
import random

def create_random_melody(style, instrument, duration=180):
    """
    Generates a random melody and saves it as a MIDI file.

    Args:
        style (str): The selected music style ('Calm', 'Bright', 'Mysterious').
        instrument (str): The selected instrument ('Piano', 'Violin', 'Flute', etc.).
        duration (int): Duration of the melody in seconds.

    Returns:
        str: Filename of the generated MIDI file.
    """
    midi_filename = f"{style}_{instrument}_music.mid"
    mid = MidiFile()
    track = MidiTrack()
    mid.tracks.append(track)

    if style == "Calm":
        notes = [60, 62, 64, 65, 67, 69, 71, 72]  # C Major Scale
    elif style == "Bright":
        notes = [72, 74, 76, 77, 79, 81, 83, 84]  # Higher octave C Major Scale
    elif style == "Mysterious":
        notes = [60, 63, 65, 68, 70, 73, 75, 78]  # Suspenseful scale
    else:
        notes = [60, 62, 64, 67, 69]  # Default to C Pentatonic Scale

    total_ticks = 0
    ticks_per_note = 480

    while total_ticks < duration * 480:
        note = random.choice(notes)
        velocity = random.randint(50, 100)
        track.append(Message('note_on', note=note, velocity=velocity, time=0))
        track.append(Message('note_off', note=note, velocity=velocity, time=ticks_per_note))
        total_ticks += ticks_per_note

    mid.save(midi_filename)
    return midi_filename

# Streamlit App
def main():
    st.title("Random Music Generator")

    # User inputs
    style = st.selectbox("Choose a music style:", ["Calm", "Bright", "Mysterious"])
    instrument = st.selectbox("Choose an instrument:", ["Piano", "Violin", "Flute", "Guitar"])
    duration = st.slider("Select duration (seconds):", min_value=30, max_value=180, step=30, value=90)
    file_format = st.selectbox("Select file format:", ["MIDI"])

    if st.button("Generate Music"):
        st.write(f"Generating {style} music with {instrument} for {duration} seconds...")

        if file_format == "MIDI":
            midi_filename = create_random_melody(style, instrument, duration)
            st.success("MIDI file generated successfully!")

            # Provide MIDI download link
            with open(midi_filename, "rb") as midi_file:
                st.download_button(
                    label="Download MIDI File",
                    data=midi_file,
                    file_name=midi_filename,
                    mime="audio/midi"
                )

if __name__ == "__main__":
    main()


RUN

streamlit run music_generator.py

2024/11/01

Salesforceナレッジのレポート作成手順

 

1. Salesforceナレッジのレポートタイプの作成

Salesforceでは、カスタマイズされたレポートタイプを使用することで、必要なデータを分かりやすく抽出・表示することができます。Salesforceナレッジに関するレポートを作成するには、まずナレッジに基づいたレポートタイプを作成する必要があります。

手順

  1. 設定にアクセス

    • Salesforce画面右上の「⚙」アイコンをクリックし、「設定」を選択します。
  2. レポートタイプの設定を開く

    • 設定メニューで、「レポートタイプ」と検索バーに入力して、表示される「レポートタイプ」オプションを選択します。
  3. 新しいカスタムレポートタイプの作成

    • 「新規カスタムレポートタイプ」をクリックします。すると、以下のような設定画面が表示されます。
  4. レポートタイプの基本情報を入力

    • 「主オブジェクトの選択」で、「ナレッジ記事」を選択します。
    • レポートタイプ名に任意の名前を入力(例:「ナレッジ記事レポート」)。
    • 「レポートタイプの詳細」には、概要や説明を入力しておくと便利です。
    • 「カテゴリ」で、作成するレポートタイプを分類するフォルダを指定します(例:営業、サービスなど)。
    • 「リリース状態」は「リリース済み」に設定しておくと、他のユーザーも利用可能になります。
  5. オブジェクトの関連設定(オプション)

    • 必要に応じて、他のオブジェクト(例:ケースやアカウント)と関連付けたレポートを作成することも可能です。
    • 「関連オブジェクトを追加」セクションから、ナレッジと関連のあるオブジェクトを選択し、「左外部結合」など結合タイプを設定します。
  6. レポートタイプの保存とリリース

    • 「保存」をクリックし、レポートタイプを保存します。
    • 必要に応じて、ユーザーに対してリリース(公開)することもできます。

この手順で、ナレッジ記事に基づいたカスタムレポートタイプの作成が完了しました。このレポートタイプを使用することで、ナレッジ記事に関するレポートをより柔軟に作成できます。


2. Salesforceレポートの作成手順

次に、作成したレポートタイプを使用して、具体的なレポートを作成する手順を説明します。

手順

  1. レポートタブにアクセス

    • Salesforceのホーム画面から、「レポート」タブをクリックします。
    • 「新規レポート」ボタンをクリックして、レポート作成画面に移動します。
  2. レポートタイプの選択

    • 「レポートタイプの選択」画面が表示されます。ここで、先ほど作成した「ナレッジ記事レポート」を選択します。
    • 「開始」をクリックして、レポート作成画面に移動します。
  3. 列の追加とフィルタの設定

    • レポート作成画面の左側に「列」リストが表示されます。このリストから、表示したい情報(例:タイトル、作成日、最終更新日など)を選択し、レポートにドラッグ&ドロップで追加します。
    • 「フィルター」オプションから、必要な条件を設定します。例として、記事の公開日や作成者によるフィルタリングが可能です。
      • フィルター例:
        • 「公開日」:過去30日以内
        • 「作成者」:特定のユーザーまたは部門
  4. グループ化の設定(オプション)

    • 特定の項目(例:カテゴリや作成者)でグループ化することで、データをさらに見やすく整理できます。
    • 左メニューから「グループ」のフィールドをドラッグし、レポート内に配置します。カテゴリ別やユーザー別の集計が可能です。
  5. 集計機能の追加(オプション)

    • 数値データ(例:記事の閲覧数など)に対して、合計値や平均値を計算できます。
    • 集計したい項目をクリックし、「サマリー」を選択することで、合計や平均などの集計が可能です。
  6. チャートの追加(オプション)

    • レポートをグラフで視覚化したい場合は、「チャートを追加」ボタンをクリックし、棒グラフや円グラフなどを選択します。
    • チャートを追加すると、データの視覚的な理解が向上します。
  7. レポートの保存

    • レポート設定が完了したら、「保存&実行」ボタンをクリックします。
    • レポート名を入力し、フォルダを選択して保存します(例:「ナレッジ記事月次レポート」など)。
  8. レポートの実行と確認

    • 保存したレポートは、すぐに実行して結果を確認できます。また、レポートのスケジュール設定を行うことで、定期的に自動実行されるようにも設定可能です。

補足:Salesforceレポートに関するベストプラクティス

  • 目的を明確にする:レポートの目的に応じてフィルタやグループ化を工夫することで、必要な情報がわかりやすく表示されます。
  • 共有設定を確認する:レポートを共有する際は、ユーザーごとのアクセス権限に注意しましょう。
  • 定期的な更新・メンテナンス:レポート内容が最新の状態を保つため、定期的にフィルタや集計内容を見直しましょう。

これで、Salesforceナレッジに基づくレポートタイプの作成と、そのレポートを使った実際のレポート作成手順が完了しました。Salesforceのレポート機能を活用することで、ナレッジ管理や業務改善に役立てることができます。

2024/07/08

PMDの利用手順|日本語版

 インストールについて

・必要条件

Java 8 以降

zipアーカイバ

・ダウンロード

https://github.com/pmd/pmd/releases/download/pmd_releases%2F7.0.0/pmd-dist-7.0.0-bin.zip

・環境変数の追加

必須ではありませんが、追加すると便利になる

例え、C:\pmd-bin-7.0.0に展開する場合

CMDで追加:SET PATH=C:\pmd-bin-7.0.0\bin;%PATH%

もしくは手動でスタートメニューから環境変数に追加する

基本的なCLIの使用

https://pmd.github.io/pmd/pmd_userdocs_cli_reference.html

-R <path>: 使用するルール・セット・ファイル。

-d <source> …: 分析するソースへのパス。

-f <format>: レポート形式。

--aux-classpath <classpath>: 分析されたJavaソースのコンパイル済みクラス・ファイル(存在する場合)を含むクラス・パス。


・Javaの場合

pmd.bat check -d c:\src -R rulesets/java/quickstart.xml -f csv > [出力パス]\result.csv

・Apexの場合

pmd.bat check -d c:\src -R rulesets/apex/quickstart.xml -f csv > [出力パス]\result.csv

・LWCとVisualForceの場合

ルールセットは自作してから利用します。ルールセットは作成資料:

https://pmd.github.io/pmd/pmd_userdocs_making_rulesets.html#sharing-your-ruleset

https://pmd.github.io/pmd/pmd_rules_ecmascript.html

https://pmd.github.io/pmd/pmd_rules_html.html

https://pmd.github.io/pmd/pmd_rules_visualforce.html