そういうのがいいブログ

アプリ個人開発 まるブログ

アプリ開発覚え書き

「逆翻訳 翻訳時短」 プライバシーポリシー

制定日:2021/04/04

このページは、Maruyu Apps(以下「私」と言います。)が提供するスマートフォンアプリ「逆翻訳 翻訳時短」(以下「本アプリ」と言います。)における利用者情報の取扱いについて、以下のとおりアプリケーション・プライバシーポリシー(以下「本ポリシー」といいます。)を定め、公表しております。本アプリをインストールする前に本ポリシーをご確認いただき、内容をご理解の上で本アプリをご利用下さい。
なお、本ポリシーにおいて、「利用者情報」とは、お客様の識別に係る情報、通信サービス上の行動履歴、その他お客様のスマートフォンにおいてお客様と結びついた形で生成、利用又は蓄積されている情報であって、本ポリシーに基づき当社が取得するものを意味するものとします。

本アプリが利用する利用者情報

 
本アプリが利用する利用者情報は、下記の3つです。
  • アプリの広告表示のためにお客様の情報の一部を送信する可能性があります。
  • アプリではアクセス解析ツールを用いてアプリの利用状況を収集しております。
  • 問い合わせの際に利用者情報の一部を送信します。
  1. アプリの広告表示本アプリは広告表示のためにお客様の情報の一部を送信する可能性があります。広告表示は、下記2社のサービスを利用しており、本アプリは2社に利用者情報の提供を行います。それぞれのサービスが利用している利用者情報と目的については各社のサービスのプライバシーポリシーをご確認ください。

  2.アプリのアクセス解析
  本アプリではアクセス解析ツールを用いてアプリの利用状況を収集しております。

  アクセス解析Google Analyticsを利用しております。

  本アプリは画面遷移を行った際に、画面IDと利用者情報をGoogle Analytics

  に送付します。

  1. 問い合わせ
    本アプリでは問い合わせの際に利用者情報の一部を送信します。
    問い合わせはメールで行い、メール本文に下記情報が埋め込まれます。また、メールで送信されるため、メールアドレスも送信されます。
    • 名前、メールアドレス
    • 端末名、OSバージョン、その他端末情報(画面サイズ、ピクセル密度、利用可能ヒープメモリ量)
    • アドオン購入状況

利用目的

利用者情報はそれぞれ下記目的に利用されます。

  • 三者の広告の配信・表示のため
  • 当社のサービスに関連して、個人を識別できない形式に加工した統計データを作成するため
  • 本アプリに関するご案内、お問い合せ等への対応のため

【Unity】テキストのコピー機能を実装する方法

モバイル端末でインプットフィールドのテキストを
うまくコピーできなかったのでメモ

実装方法

下記スクリプトの関数をボタンに割り当てる

using UnityEngine;
using UnityEngine.UI;

public class CopyText : MonoBehaviour
{
    [SerializeField] private Text copyTarget_text;//コピーするテキストをアタッチ

 //この関数をボタンに割り当て
    public void CopyTextButton()
    {
        GUIUtility.systemCopyBuffer = copyTarget_text.text;
    }
}

参考

kan-kikuchi.hatenablog.com

【Unity】スクリプトから影を消す

参考記事の影を消す設定
スクリプトから実行するのに時間がかかったのでメモ

参考

tsubakit1.hateblo.jp

スクリプト

using UnityEngine.Rendering;
private SkinnedMeshRenderer skinnedMeshRenderer;
                //SkinnedMeshRendererを取得
                 skinnedMeshRenderer = gameObject.GetComponent<SkinnedMeshRenderer>();                
                skinnedMeshRenderer.shadowCastingMode = ShadowCastingMode.Off;//ライティング>投影>オフに変更 using UnityEngine.Rendering;が必要
                skinnedMeshRenderer.receiveShadows = false;//ライティング>影を受ける>オフ

【Unity】iOS実機確認中のXcode エラー UnityGfxDeviceWorker (32): EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=1450 MB, unused=0x0)

エラー内容

開発中のアプリで新機能を実装してiPhone8実機確認中(Xcodeにログが出る状態)にエラー発生
2回同じ内容で試して最初の文字だけ違っているが、たぶん同じ内容
端末は固まったり、落ちる

Xcode上のエラー内容
UnityGfxDeviceWorker (32): EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=1450 MB, unused=0x0)

Thread 1: EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=1450 MB, unused=0x0)

調査内容

・ネットで調査>メモリが単純に少ないというコメント発見
・モデルを外部から読み込んだ時に発生する
・私が所持しているAndroid端末はメモリ4GBで同じ処理をしても落ちない
・iPhone8のメモリは2GB

原因はおそらくメモリ不足
iPhoneiPadのメモリを調査したところ
最近の端末は3GB以上なので2GB以下は制約をつけてリリースすることにした。

メモリサイズ取得 hiyotama.hatenablog.com

引用元: 【最新版】iPhone/iPadのメモリ(RAM)容量一覧【歴代全機種】 | iPadBoy

f:id:marumaro7:20210322073248p:plain

f:id:marumaro7:20210322073603p:plain

おわりに

3GB、4GB、6GBでどうなるか試したい
どの端末を買うかが悩ましい・・・

【Unity】実機でフレームレートを確認しながら解像度を変更する

参考記事をまとめて実施したかったのでメモ

解像度変更

・ボタンのUI作成
・ボタンにpublic void ChangeRate(int RefreshRate)を割り付け引数設定が必要
・テキストの作成
・このスクリプト public Text fpsText にテキストオブジェクトのアタッチが必要

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//追加

public class RateCheck : MonoBehaviour
{
    //テスト用 解像度変更 RefreshRateは60まで 小5 微15 中30 大60
    //ボタンを作り、ボタンの引数に5、15、30、60を設定した
    //参考 https://kan-kikuchi.hatenablog.com/entry/UnityTips3
    public void ChangeRate(int RefreshRate)
    {
        float screenRate = (float)1024 / Screen.height;
        if (screenRate > 1) screenRate = 1;
        int width = (int)(Screen.width * screenRate);
        int height = (int)(Screen.height * screenRate);
        Screen.SetResolution(width, height, true, RefreshRate);
    }


    //フレームレートチェック
    //参考 https://ekulabo.com/frame-rate-time
    public Text fpsText;// フレームレートを表示するテキストです。   
    private int frameCount;// Update()が呼ばれた回数をカウントします。   
    private float elapsedTime;// 前回フレームレートを表示してからの経過時間です。    

    void Update()
    {
        // 呼ばれた回数を加算します。
        frameCount++;

        // 前のフレームからの経過時間を加算します。
        elapsedTime += Time.deltaTime;

        if (elapsedTime >= 1.0f)
        {
            // 経過時間が1秒を超えていたら、フレームレートを計算します。
            float fps = 1.0f * frameCount / elapsedTime;

            // 計算したフレームレートを画面に表示します。(小数点以下2ケタまで)
            string fpsRate = $"FPS: {fps.ToString("F2")}";
            fpsText.text = fpsRate;

            // フレームのカウントと経過時間を初期化します。
            frameCount = 0;
            elapsedTime = 0f;
        }
    }
}

参考

kan-kikuchi.hatenablog.com

ekulabo.com

Screen-SetResolution - Unity スクリプトリファレンス

【Unity】iOS実機 Profilerを見る手順(Wifi接続)

この記事を参考に実機で確認しようとしたら
Unity 2019.3.15f1では微妙に項目が違っていたの
違う点だけメモ

light11.hatenadiary.com

ビルドセッティングチェック項目

f:id:marumaro7:20210322052111p:plain

iPhone選択画面

f:id:marumaro7:20210322052355p:plain

参考

qiita.com

【忙しい人向け】AdMob税務情報の提出 アプリ開発者要対応!

f:id:marumaro7:20210312004007p:plain

はじめに

詳しいことは他の方にまかせて、誤解を恐れずざっくり書きます。
・米国の法律改正でAdMob(AdSense)の収入から24%の税金が引かれます
・税務情報を申請すれば税金24%は免除
・用意するものはマイナンバー(マイナンバーカードである必要は無し)
・入力自体は10分くらい

対応は自己責任でお願い致します。 詳しく知りたい方は一番下の参考の項目を見てください。

<追記>
再提出することになったので、
一番下の追記部分を確認してから実行ください。

申請方法

1.Google AdSenseのページに遷移

AdSenseのページ>お支払い>設定を管理する f:id:marumaro7:20210311224718p:plain

2.アメリカの税務情報

下の方にある「アメリカの税務情報」をクリック f:id:marumaro7:20210311225718p:plain

3.税務情報の追加

f:id:marumaro7:20210311225935p:plain

4.米国の税務情報

・個人
・いいえ
・W-8BEN(個人用の入力フォーム)
を選択し、「W-8BENフォームの記入を開始する」を押す。 f:id:marumaro7:20210311230544p:plain

5.W-8BEN納税フォーム

5-1.納税者番号

・個人名(英語) (例)Taro Yamada
・国籍>日本
・外国のTIN>マイナンバーを入力(12桁)
f:id:marumaro7:20210311231642p:plain

5-2.住所

英語表記で入力が必要なのでこのサイトを参考に入力しました。
(住所を書く順番は日本語と英語で逆になるのでサイトの使用を推奨です。)
住所を英語表記に簡単変換 - 君に届け!

f:id:marumaro7:20210311233344p:plain

5-3.租税条約

租税条約下で源泉徴収に適用される軽減税率の請求を行っていますか?

・はい
・「米国との租税条約の適用のある国の居住者」にチェック
・国>日本
f:id:marumaro7:20210311233751p:plain

特別な料率や条件

ご自分の使用しているサービスをチェックいれて設定してください。
今後のために全部設定しておけばOKです。
「条項と段落」は選択式になっていますが一つしか選べませんでした。
源泉徴収率は「0%(軽減税率)」を選んでください。

f:id:marumaro7:20210311234048p:plain

5-4.書籍のプレビュー

チャック入れて次へ f:id:marumaro7:20210312001333p:plain

5-5.納税証明

名前(英語) f:id:marumaro7:20210311234927p:plain

5-6.米国内で行っている活動とサービス、および宣誓供述書

米国内で行っている活動とサービス

いいえ f:id:marumaro7:20210311235702p:plain

税務上の地位の変更に関する宣誓供述書

注意)この項目はAdMob(AdSense)の支払いを受け取ったことがあるか無いかで変わります。

・支払いを受け取ったことがない方 f:id:marumaro7:20210312000043p:plain

・支払いを受け取ったことがある方 f:id:marumaro7:20210312000329p:plain

5-7.送信!

送信すると
こんな画面になるので「新しいフォームを送信」 f:id:marumaro7:20210312002000p:plain

「新しいフォームの作成を開始」 f:id:marumaro7:20210312002107p:plain

6.確認

こんなメールが届いたら完了です!
お疲れ様でした!

f:id:marumaro7:20210312002843p:plain

おわりに

ツイッターでYoutuber向けの記事しかみかけなかったので
これからアプリ開発を始める方に伝われば良いなと思い書きました。


最後に宣伝させてください。
アプリ開発を始めて丸2年が経ち、
節目としてなにか形にしたいと思い、Udemy講座を出しました!
www.udemy.com

ブログ限定割引リンクは私のプロフィールページにあります。
アプリ開発収益化を時短したい方向けの講座となっております。

追記<2021年9月9日> 税務情報再提出の連絡

6ヶ月たって再提出のメールが来ました。

税務情報で記入した名前は英語表記でしたが、
支払いプロファイルはがっつり漢字を書いていたのがいけなかったようです。

f:id:marumaro7:20210909234522p:plain:w400

修正1

Adsenseのページの
・「設定を変更する」
・「ユーザー数:1」
のところが漢字で書いていたので、
Taro Yamadaのように名前 名字のローマ字表記で申請した内容に書き換えました。
f:id:marumaro7:20210909235830p:plain:w500

また、メールで指摘されていませんが、住所の方も日本語表記にしていたので
一応申請した内容に直し、メールの手順で再提出しました。

修正2

GooglePlayで課金設定している場合、
お支払いプロファイルを別途設定していると思います。
こちらについても同様に申請内容と同じ英語表記へ直し、再提出しました。

f:id:marumaro7:20210910002747p:plain:w200

参考

www.iscle.com

www.youtube.com