NIFCLOUD-mbaas / UserCommunity

ニフクラ mobile backend ユーザーコミュニティ
https://mbaas.nifcloud.com/
81 stars 18 forks source link

iOS SDK v2.0.1 PUSH通知から開くとアプリが落ちる #90

Closed yskfj closed 9 years ago

yskfj commented 9 years ago

/Library/Private Documents/NCMB/currentInstallation にcurrentInstallationの内容を保存している気配が無いので (一応コード上で NSData writeToFile を行っている箇所を確認しました)

NCMBAnalytics trackAppOpenedWithRemoteNotificationPayload: 実行時に installation.deviceType installation.deviceToken がnilになります

そのため、 NSDictionary *requestData = @{@"deviceType":installation.deviceType, @"deviceToken":installation.deviceToken }; で落ちます

おそらくPUSHから開いた統計データも正しく取れていないのではないでしょうか

合わせて同じ内容でNiftyにも問合せます

テストに成らないので、一旦自分用のforkで それぞれnilだったら空文字列をセットする形で対応しようと思います

yskfj commented 9 years ago

補足です

ver1でファイル生成済みのデバイスでアップデートした場合は、値が正しいかどうかはおいておいて落ちることは無いです。

yskfj commented 9 years ago

v2.0.2でも変わってないですね。currentInstallationファイルが作成できていない場合に PUSHからアプリを開いて NCMBAnalytics trackAppOpenedWithRemoteNotificationPayload: を実行すると落ちます

yskfj commented 9 years ago

理由が分かりました

https://github.com/NIFTYCloud-mbaas/UserCommunity/issues/98

に記載の通り、アプリを一旦アンインストールして再インストールすると、duplicateエラーが出ます その際に保存出来ないのでcurrentInstallationファイルが生成されない