迷惑メールに気をつけて
1/2
迷惑メールの例
迷惑メールの対策については、下記が参考になります。
迷惑メールが届いてい困った場合や、迷惑メールの相談先が掲載されています。
迷惑メールに気をつけて安心して、ご利用くださいね。
もしかして迷惑メールだと思ったら開かないように気をつけてください。
迷惑メールにはフィルタリングの設定も有効です。
パソコンやスマートフォンにフィルタリングの設定をていない場合はフィルタリングの設定をすることをお勧めします。
例えば、ドコモのスマホにフィルタリングを設定するため
Yahoo!やGoogleなどの検索ボックスから「迷惑メール フィルタリング ドコモ」と入力して検索すると設定の一覧が表示されます。
また、身に覚えのないメールには返信しないように心がけるとか
添付ファイルやリンクは不用意に開かないことをお勧めします。
間違えてリンクをクリック(タップ)しても画面が開いても何もしないで閉じることをお勧めします。
また、ウイルス対策ソフトをインストールしている場合はウイルスチェックをしてください。

[総務省関連]
「総務省トップ > 政策 > 情報通信(ICT政策) > 電気通信政策の推進 > 電気通信消費者情報コーナー > 迷惑メール対策 」を開く
[国民生活センター関連]
「独立行政法人 国民生活センター」を開く
[迷惑メール相談センター関連]
「日本データ通信協会 迷惑メール相談センター」を開く
[J:COMサポート 迷惑メール撃退サービス関連]
「J:COMサポート 迷惑メール撃退サービス関連」を開く
できるかな (WEBアプリ)
全部で10問あります。
例題→問題の繰り返しでゲームを実行します。
ゲームを中止したい場合は「中止」ボタンをタップしてください。
10問すべて答えると「こたえあわせ」の画面が開きます。
問題の答えと結果を確認することができます。
「できるかな」画面を開きます
ミニ脳トレ (WEBアプリ)
何が来たの?
一番前の絵と同じ絵のボタンを次々にタップしてください。
「何が来たの?」画面を開きます
旗あげ
指示通りに旗をあげさげしてしてください。
赤について指示があれば赤の旗をあげさげしてください。
「旗あげ」画面を開きます
順に消してね
上のグループの並び順とおなじ絵を順番にタップしてね。
上のグループがすべて消えたら次の問題が表示されるよ。
「順に消してね」画面を開きます
重複してるのは?
重複してるものをすべて選んで決定してね。
正解すると次の問題が表示されるよ。
「重複してるのは?」画面を開きます
神経衰弱
すべてのペアを選んでね。
すべてめくると次の問題が表示されるよ。
「神経衰弱」画面を開きます
じゃんけん
指示にあったじゃんけんをしてね。
勝つ指示があった場合、相手がグーを出したらパーを選んでね。
「じゃんけん」画面を開きます
計算
指示に従った計算をしてね。
左上の画像の指示と同じ絵を計算してね。
「計算」画面を開きます
いなかったのは誰?
最初にいなかったキャラを選んでね。
最初に表示されたキャラと比較して次に表示された最初にいないキャラを選んでね。
「いなかったのは誰?」画面を開きます

今日の「ことわざ」の問題
ことわざの意味一升入りの容器には、どう工夫しても一升しか入らないという意から、物事にはそれぞれの限度があるというたとえ。
該当する適切な「ことわざ」を3択から選んでね。
雨を冒して韮を剪る
医者の不養生
一升入る壺


今日の「四字熟語」の問題
四字熟語の意味一つの行為から、同時に二つの利益・効果を得ることのたとえ。
該当する適切な「四字熟語」を3択から選んでね。
雲合霧集
一石二鳥
烏白馬角


今日の「おさかな」の問題
「おさかな」の「ふりがな」ふな
該当する適切な「おさかな」の「漢字」を3択から選んでね。

今日の誕生花
誕生花ルピナス
花言葉空想 貪欲

AppStoreおよびObjective-Cのお知らせ

AppStoreのお知らせ
abc3.me02(水道光熱費)
AppStoreを開く
abc3.me02 [水道光熱費管理]
[ver 1.2.5]

1. 修正報告
iOS 13.6で確認したところメッセージボックスの解放処理で一部不具合があったため修正しました。

2. ダークモード対応のための修正
ダークモード対応についてテストおよび検証をしながら作成した画面レイアウトを確認しました。
このアプリをダークモードの黒ベースで文字を一部白抜きなどとして表示確認をしましたが
みづらくなってしまうため、
ダークモードに変更をしてもライトモードと似た感じのレイアウトになるように修正をしました。
今後も、ダークモードに関する対応は、上記対応(ライトモードよりのレイアウト)とさせていただきます。
また、文字の部分でライトモードでは影をつけている部分
などがございますが、ダークモードでは未対応とさせていただきますこと
ご了承いただけますよう、お願いします。

[ダークモードへの変更手順]
ご存知と思われますが、
iOS13上でのダークモードに変更する手順は下記の通りとなります。
(1) 設定ボタンを選択
(2) 一覧から「画面表示と明るさ」を選択
(3) 外観モードから「ダーク」を「選択」
同様の手順で「ダークモード」から「ライトモード」に変更ができます。

ダークモードのコントロールはコントロールの背景色や文字色を正しく指定してあれば
大抵、設計したレイアウト通りの表示をします。
しかし、デフォルトの設定値に任せているとダークモードに設定しているユーザがアプリを見ると
想定と異なる結果になっていることがあるようです。

ダークモード判定例
[ヘッダファイル]
xxx.h
+(int)judgeDarkModeColor;
[モジュールファイル]
xxx.m
//ダークモードの判定結果を返す
//戻り値:
//0:ライトモード
//1:ダークモード
+(int)judgeDarkModeColor
{
    int result = 0;
    if(@available(iOS 13.0,*))
    {
        if([UITraitCollection currentTraitCollection].userInterfaceStyle == UIUserInterfaceStyleDark)
        {
            result = 1;
        }
    }
    return result;
}

[使用例]
上記メソッドがxxxクラスに実装しているケース
※xxxクラスのヘッダでクラスメソッドを宣言していることが条件
if([xxx judgeDarkModeColor] > 0)
{
    //ダークモードだとしても画面の背景色を白にする
    self.view.backgroundColor = [UIColor whiteColor];
}
if([xxx judgeDarkModeColor] > 0)
{
    //ダークモードであればラベルの文字色を白にする
    lbl.textColor = [UIColor whiteColor];
}
※上記lblをUILabelとしたケース。
if([xxx judgeDarkModeColor] > 0)
{
    if (@available(iOS 13.0, *))
    {
        //クリアボタンをみやすい状態にする
        txt.overrideUserInterfaceStyle = UIUserInterfaceStyleLight;
    }
    else
    {
        // Fallback on earlier versions
    }
    txt.textColor = [UIColor blackColor];//文字色
    txt.backgroundColor = [UIColor whiteColor];//背景色
    [txt.layer setCornerRadius:5.0f];//角の丸み
    [txt.layer setBorderColor:[UIColor blackColor].CGColor];//枠の色
    [txt.layer setBorderWidth:0.5f];//枠線
}
※上記txtをUITextFieldとしたケース。
※テキストのクリアボタンが表示されるタイミングは
画面上に初期表示時点で可視できる部分はクリアボタンが表示されますが、
スクロールなどしないと見えない部分は入力をした時点でクリアボタンがみえるようになります。
if([xxx judgeDarkModeColor] > 0)
{
    if (@available(iOS 13.0, *))
    {
        //選択した背景色を白色にするケース
        [seg setSelectedSegmentTintColor:[UIColor whiteColor]];
        //選択した文字色を黒色にするケース
        [seg setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor blackColor]} forState:UIControlStateNormal];
    }
}
※上記segをUISegmentedControlとしたケース。上記、@〜の部分はNSDictionaryに設定した結果を渡すこともできます。
if([xxx judgeDarkModeColor]>0)
{
    //背景色を白色にするケース
    picker.backgroundColor = [UIColor whiteColor];
}
//UIPickerViewの文字色を変更するケース
-(NSAttributedString*)pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger)row forComponent:(NSInteger)component
{
    NSString *txt = @"";
    switch (component)
    {
        //UIPickerViewにNSMutableArrayでデータを格納して使用しているケース
        //この例ではary1およびary2を使用してるものとします。
        case 0:
            txt = [ary1 objectAtIndex:row];
            break;
        case 1:
            txt = [ary2 objectAtIndex:row];
            break;
    }
    //UIPickerViewの文字色を黒色にするケース
    //非ARCはautoreleaseを追加してください
    NSAttributedString *attri = [[NSAttributedString alloc]initWithString:txt attributes:@{NSForegroundColorAttributeName:[UIColor blackColor]}];
    return attri;
}
※上記pickerをUIPickerViewとしたケース。上記、@〜の部分はNSDictionaryに設定した結果を渡すこともできます。
if([xxx judgeDarkModeColor]>0)
{
    //背景色を白色にするケース
    picker.backgroundColor = [UIColor whiteColor];
    //選択した文字の色を黒色にするケース
    picker setValue:[UIColor blackColor] forKey:@"textColor"];
}
※上記pickerをUIDatePickerとしたケース。
今後とも、abc3.meをよろしくお願いします。
by abc3.me
ESP TEST
AppStoreを開く
[ver 1.3]
[修正概要]
AdMobをWKWebViewを使用するSDKに対応しました。
[修正内容]
iOS向けのGoogle Mobile Ads SDKに更新をしました。
巫女うらない
AppStoreを開く
[ver 1.2]
[修正概要]
AdMobをWKWebViewを使用するSDKに対応しました。
[修正内容]
iOS向けのGoogle Mobile Ads SDKに更新をしました。
おぼえる英単語
AppStoreを開く
[ver 1.10]
iPhone XS/XR画面の画面上部のレイアウトを修正しました。
AdMobをWKWebViewを使用するSDKに対応しました。
[修正概要]
AdMobをWKWebViewを使用するSDKに対応しました。
[修正内容]
iOS向けのGoogle Mobile Ads SDKに更新をしました。
ミニ脳トレ
AppStoreを開く
[ver 4.51]
[修正概要]
(1)ステータスバーの高さ
iPhone XS/XR画面の画面上部のステータスバーの高さをiOS13.0以降と未満に分岐処理変更処理をしました。
(2)AdMob更新
AdMobをWKWebViewを使用するSDKに対応しました。
[修正内容]
(修正例)
(1)ステータスバーの高さ
[iOS13.0以降]
[UIApplication sharedApplication].windows.firstObject.windowScene.statusBarManager.statusBarFrame.size.height;
[iOS13.0未満]
UIApplication.sharedApplication.statusBarFrame.size.height;
(2)AdMob更新
AdMobをGoogle Mobile Ads SDK(WKWebViewを使用するSDK)に更新をしました。
ミニすごろく
AppStoreを開く
[ver 1.1]
[修正概要]
(1)ステータスバーの高さ
iPhone XS/XR画面の画面上部のステータスバーの高さをiOS13.0以降と未満に分岐処理の変更をしました。
(2)AdMob更新
AdMobをWKWebViewを使用するSDKに対応しました。
[修正内容]
(修正例)
(1)ステータスバーの高さ
[iOS13.0以降]
[UIApplication sharedApplication].windows.firstObject.windowScene.statusBarManager.statusBarFrame.size.height;
[iOS13.0未満]
UIApplication.sharedApplication.statusBarFrame.size.height;
(2)AdMob更新
AdMobをGoogle Mobile Ads SDK(WKWebViewを使用するSDK)に更新をしました。
給与レポート
AppStoreを開く
[ver 1.17]
[修正概要]
(1)ステータスバーの高さ
iPhone XS/XR画面の画面上部のステータスバーの高さをiOS13.0以降と未満に分岐する処理に変更しました。
(2)AdMob更新
AdMobをWKWebViewを使用するSDKに対応しました。
[修正内容]
(修正例)
(1)ステータスバーの高さ
[iOS13.0以降]
[UIApplication sharedApplication].windows.firstObject.windowScene.statusBarManager.statusBarFrame.size.height;
[iOS13.0未満]
UIApplication.sharedApplication.statusBarFrame.size.height;
(2)AdMob更新
AdMobをGoogle Mobile Ads SDK(WKWebViewを使用するSDK)に更新をしました。

Objective-Cのお知らせ
ステータスバーの高さ取得について
[ステータスバーの高さの取得例]
※Xcode 11.5を使用したケース
※iOS 13.0以降を想定したケース

ヘッダの宣言
//UIApplicationを実行するためにUIKitを宣言します
#import <UIKit/UIKit.h>

+(CGFloat)getStatusBarHeight;

モジュールの実装
+(CGFloat)getStatusBarHeight
{
    CGFloat height = 0.0f;
    if (@available(iOS 13.0, *))
    {
        //iOS 13.0以降のケース
        height = [UIApplication sharedApplication].windows.firstObject.windowScene.statusBarManager.
statusBarFrame.size.height;
    }
    else
    {
        //iOS 13.0未満のケース
        height = UIApplication.sharedApplication.statusBarFrame.size.height;
    }
    return height;
}

AppStore申請について
Info.plistのprivacy項目について
[NSBluetoothAlwaysUsageDescription]
上記項目はInfo.plistにある項目となります。
開発者様が作成されたアプリにprivacy項目を含む機能がある場合、その通知メッセージをユーザに表示することができる機能です。

iOSではユーザに通知をする場合、iOS側で用意したデフォルトメッセージを表示してくれますが、開発者側で用意したメッセージを表示するようにして欲しいようです。
そのため申請によっては通知メッセージを表示してくださるように、再提出の依頼がある可能性があります。

it attempted to access privacy-sensitive data without a usage description.
The app's Info.plist must contain an NSBluetoothAlwaysUsageDescription key with a string value explaining to the user how the app uses this data.

Bluetoothの機能を使用する可能性がある場合は、privacy項目に該当するため上記privacy項目を追加し、必要なメッセージを設定してください。
また、Bluetoothには次のprivacy項目があると思います。
[NSBluetoothPeripheralUsageDescription]
上記privacy項目はDeprecatedになっていました。

[参考ページ]
「NSBluetoothPeripheralUsageDescription」の記事を開く
そのため、Bluetoothの機能を使用する可能性があるアプリを作成した場合は
[NSBluetoothAlwaysUsageDescription]
のprivacy項目をInfo.plistに設定して必要なメッセージを追加した方がいいと思います。

おそらくprivacy項目全般について、メッセージを追加していない場合等は、申請の際、再提出の依頼があるかもしれないため、見直しをした方がいいかもしれません。

Bluetoothのユーザ向けの通知

Info.plistには公開するアプリ固有のBluetoothの使用方法を明記し、ユーザに確認を取る必要があるようです。

ちなみに「What to use bluetooth」では、このアプリの使用目的を説明していないとしてダメでした。

[参考レビュー抜粋]
Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage

We noticed that your app requests the user’s consent to access their Bluetooth but does not clarify the use of the Bluetooth in the applicable purpose string.


App Storeプレビューで表示されるAppサポートのリンクで表示されるホームページにコンタクト情報について
[コンタクト情報について]
ホームページにはコンタクト情報を表示する必要があるようです。
申請の際、Appサポートのリンクの表示ページにコンタクト情報がない場合はリジェクトの原因となります。
ユーザからのコンタクト情報がわかるように設置されている必要があるようです。

[参考レビュー抜粋]
1. 5 Safety: Developer Information
5. 1.1 Legal: Privacy - Data Collection and Storage

Guideline 1.5 - Safety - Developer Information

The support URL specified in your app’s metadata, (ホームページのURL), does not properly navigate to the intended destination. Specifically, it do not contain contact info.

Next Steps

To resolve this issue, please revise your app’s support URL to ensure it directs users to a webpage with support information.
Xcodeのビルドエラー