問題
ビルド後、NativeScript (NS) アプリは Android フォンで正常に実行されます。ただし、 NS 開発者アプリで実行しようとすると、おそらく依存関係が見つからないためにクラッシュします。
ドキュメントには、依存関係として追加することで使用できるカスタム npm モジュールのリストが記載されていますpackage.json
。そのリストで定義されていない他のモジュールに依存するプロジェクトをテストするために NS 開発者アプリを使用することは不可能であると仮定するのは正しいですか?
そうでない場合、この問題の原因は何ですか?
おそらく関連している
この質問は関連しているようです。ただし、を使用してデバイスで直接実行しても、問題は解決しませんtns run
。私の問題は、NativeScript 開発者アプリでのみ再現できます。
動機
コンパニオン アプリで実行したい理由は、同僚の iPhone で実行する必要があり、Apple アカウントの料金を支払ったり、アドホック プロビジョニング プロファイルを設定する手間をかけたりしたくないからです。同僚のデバイスを 1 つずつ追加します。
私は iPhone を持っていないので、Android フォンを使用してコンパニオン アプリにデプロイするプロセスをテストしています。
再現する手順
このガイドに従って、プロジェクトは最初に次のように作成されました。ドキュメントherenativescript-floatingactionbutton
に従って、依存関係が追加されました。
tns create Mcve --template typescript
cd Mcve/
tns platform add android
npm install --save nativescript-floatingactionbutton
これがコードです。この MCVE をビルドすると、アイコン リソースが存在しないというメッセージが表示される場合がありますが、これが問題の原因である可能性は低いことに注意してください。
<!-- main-page.xml -->
<Page xmlns="http://schemas.nativescript.org/tns.xsd"
xmlns:FAB="nativescript-floatingactionbutton">
<StackLayout>
<FAB:fab icon="res://ic_add_white" rippleColor="#f1f1f1" class="fab-button" />
</StackLayout>
</Page>
/* app.css */
.fab-button {
height: 70;
margin: 15;
background-color: #ff4081;
horizontal-align: right;
vertical-align: bottom;
}
この時点で、次を使用してプロジェクトを appbuilder に追加しました。
appbuilder init
次の方法でプロジェクトをビルドすると、期待どおりに実行されます。
appbuilder build android
ただし、コンパニオン アプリにデプロイしようとすると、クラッシュします。
appbuilder build android --companion
コールスタックをプレーン テキストとして抽出する方法がわかりませんでしたが、NS コンパニオン アプリのスクリーンショットを次に示します。
私のセットアップ
- 開発マシン:Windows 10 Pro、64bit
- Android フォン: Android 5.0.1 を実行する ALE-L21 Huawei。Telerik コンパニオン アプリと NativeScript 開発者アプリの両方がインストールされています。
- nativeScript バージョン 2.3.0
- appbuilder バージョン 3.5.2
- nativescript-floatingactionbutton バージョン 2.2.5