NativeScript iOSのreleaseビルドでログ出力する裏技
NativeScriptでは console.log('hogehoge');
でログを出力することができます。
ただ、iOSでは releaseビルド(本番のストア用ビルド)すると、ログが表示されなくなる仕様です。
(なおAndroidではreleaseビルドでも表示されます。この辺統一して欲しいものです)
そんなときは以下の__nslog
という隠しメソッドを使うとログが表示できます。
import { isIOS } from 'tns-core-modules/platform';
if (isIOS) {
__nslog('XZ LOG! hogeeee!');
}
さて実行してみると...以下のように「コンソール」アプリにログが表示されます!
通常リリースビルドでログが出なくても困らないのですが、たまーにreleaseビルドでのみ再現するバグとかがあるときに、原因調査で役立ちます。
このメソッド、内部的には iOSの NSLog をコールしているだけのメソッドです。NSLogがマクロで、直接NativeScriptから呼べないという仕様上の問題があり、NativeScriptコアチームも困って、このような内部メソッドを作ったのだと思います。非公開メソッドなので今後使えなくなる可能性があるため、productionレベルでの利用は推奨しません。というか、このメソッド、普通に公開してほしいですよね^^;
Author And Source
この問題について(NativeScript iOSのreleaseビルドでログ出力する裏技), 我々は、より多くの情報をここで見つけました https://qiita.com/hosikiti/items/6c5042d838ea3b48ea06著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .