詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com 1. 分散メールのデモンストレーション効果(I)プロジェクト効果表示(II) マルチデバイスデバッグのヒント複数のデバイスをデバッグする場合は、[ツール] の [スーパー デバイス] を選択してください。単一のデバイスを選択して分散操作を実行すると、次のように表示されます。 複数のデバイスを選択した後は、必ず両方のデバイスにアプリを展開してください。 1 つだけ展開した場合は機能しません。 (III)ページ表示の問題を解決する元のファイルのレイアウトにより、他のデバイスに移行したページのレイアウトに問題が生じる可能性があることに注意してください。リモートシミュレーター上では、他のデバイスに移行したページのOKボタンが見えなくなっている状態が表示されます。最初は本当に混乱しました。 次のように: 秦の120の峠はついに楚のものとなった!長い間探し続けた結果、ようやく理解して解決できました。 携帯電話のショートカットコントロールバーがボタンを覆います 1. 問題を分析する:
2. dialog_layout_device.xml レイアウトを調整し、このレイアウトが方向性のあるレイアウトであり、高さが重みによって割り当てられていることを確認します。このうち、ListContainer の ohos:weight="1" なので、この行を削除し、高さを 150vp に設定(合計 300vp、他のデバイスに移行した Text の 50vp、最終的な水平方向のコンテナー(確認、プレースホルダー、キャンセルの 3 つのコンポーネント)が合計 100vp を占める)すると、結果は次のようになります。 3. 問題がListDialogポップアップウィンドウにあると判断された場合は、DeviceSelectDialog.classに戻って分析します。 (1)全体構造を分析する(ここでは詳しく述べませんが、プロジェクト全体を後で分析します) (2)デバッグ用の変数を制御することで、ポップアップウィンドウを画面の中央に配置するとキャンセルボタンと確認ボタンが表示されることが分かりました。 最終的に、ボタンが携帯電話のショートカット コントロール バーによって覆われていることが判明しました。最終的な解決策は、ListContainer が移行可能なデバイスを適切に表示し、ポップアップ ウィンドウがより印象的になるようにすることでした。 dialog_layout_device.xml では、レイアウト全体の高さのみが ohos:height="400vp" に変更され、配置が中央に変更されました。 LayoutAlignment.CENTER を設定します。 それでもポップアップ ウィンドウを下部に配置し、[キャンセル] ボタンと [確認] ボタンを表示する場合は、setAlignment(LayoutAlignment.BOTTOM); を使用します。モバイル フォンのショートカット コントロール バー用に、レイアウト テキストの下に 100 vp 以上のスペースを残します。 (具体的な操作は、ListContainerのohos:weight="1"を削除して、レイアウト全体の高さを比率ではなく値に応じて視覚化することです) 最終結果: 2. プロジェクトカタログ分析3. 許可申請当然のことながら、このアプリケーションを展開すると、2 つの権限ポップアップが表示されます。
しかし実際には、このアプリケーションは次の 6 つの権限を申請します。 MainAbility の onStart() 関数内: <a name="permission"></a>「権限リストにはなぜ権限が 3 つしかないのか」という疑問について考えたことはありますか?他の 3 つの権限についてはどうでしょうか?ここでは権限が 3 つあるのに、プロジェクトのデモンストレーション中に確認ポップアップ ボックスが 2 つ表示されるのはなぜですか?理由: 機密権限のアプリケーションでは、動的アプリケーション プロセスに従ってユーザーからの承認が必要です。非機密権限には、ユーザーの機密データや危険な操作は含まれません。これらは config.json で宣言するだけで、アプリケーションのインストール後に承認されます。他の 3 つは機密性のない権限です。 アプリは動的に権限を申請し、最初は 2 つの権限のみを要求しました。当初は、ローカル画像やメディアを変更するための別の許可は申請されていませんでした。
許可申請用のコードサンプルプロジェクト(許可)があります。今後は、権限に関するより包括的な調査と、プロジェクトのより包括的な分析を実施します。 分散デバイスを取得する、つまりMailEditSliceのsetClickActionメソッド 4. インターフェース分析(レイアウトに重点を置く)1. インターフェースを分析すると、レイアウト XML ファイルが赤でマークされており、コード サンプル プロジェクトが SDK バージョン 2.0 であることがわかり、問題があることがわかりました。以下は一例であり、他の例がすべてではありません。 <a name="バージョン"></a> 2. string.jsonは文字列<a name="string"></a>の保存には使用されません。 3. moudle_mail_edit.xml のレイアウト分析を実行します。レイアウトコンポーネントは他にほとんどないので、詳細には触れません。 5. ページコーミング(スライスコーミング)1. MailEditSlice を開き、final の追加など、いくつかの不規則性を見つけます。 2. 分析する(デバイス間でのページ移行の詳細については、以前の記事「PageAbility 包括的分析」を参照してください) 6. メール本文データ、メール初期化、メールデータ処理
前処理: 7. 問題の概要1. (未解決) 公式ドキュメントに記載されている画像のように、ポップアップ ウィンドウが電話のショートカット バーによってブロックされるのを防ぐ方法。 2. (解決済み) このアプリは 6 つの権限を申請しましたが、MainAbility の requestPermission() には 3 つしかなく、プロジェクト デモでは最初に権限要求ポップアップが 2 つしかありませんでした。著者は記事中の許可申請部分を解決しました。 3. (解決済み) バージョンの問題により (コードサンプルプロジェクトは SDK バージョン 2.0 なので問題があります)、 4. (解決済み) string.json で文字列を保存しない 詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com |
>>: Xinchuang Cloudについてどれくらい知っていますか?
verelox.com は、オランダのハーグに設立されたホスティング会社で、VPS、サーバーレンタル...
これまで、Baidu でのランキングは Google よりも難しいと感じていました。 Baidu は...
モバイルインターネットの強力な影響から生まれた製品チェーンは、これまで業界関係者に衝撃を与えてきまし...
hostflyte は、Alipay の支払い方法を正式に受け入れることを発表しました。以前の Pa...
1. コンテナネットワークと戦略Kubernetes 自体はコンテナ ネットワークを実装していませ...
Kurunは、国内の高速アクセスを確保するために、常にハイエンドのリターン回線を提供することで有名で...
今後 18 か月以内にエッジ コンピューティング ソリューションを導入し、モノのインターネット (I...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスGoogle 検索は F...
昨日は地元のウェブマスター交流会に参加し、多くのことを学びました。参加者の中には、1ページでタオバオ...
これからはモバイルインターネットの時代です。モバイルインターネットの発展に関しては、ユーザーはモバイ...
XSrouteは2005年に運営を開始し、2006年に登録されたVPS事業者です。登録番号は47-5...
EBAY発祥のオンラインダイヤモンドブランド「Diamond Bird」は、わずか数年でインターネッ...
時代と企業は共に呼吸し、企業と個人は同じ運命を共にする。昨日3月16日、Qingyunは株式コード6...
ブルガリアの商人 alphavps は一連のプロモーションを開催しています。1G メモリを搭載した安...
2,500年以上の歴史を持つ大運河は、クラウドへの移行を加速させています。 4月23日、テンセントク...