AndroidクライアントとPHPサーバー間の通信(4) - Auroraプッシュサンプルプロジェクトの解析
概要
前のセクションでは、Aurora Push の登録方法とそのサンプルの使用方法について説明しました。このセクションでは、サンプル プロジェクトのフレームワークを学習し、移植の準備をします。
ルーチンのソース コードを分析する
まず、ルーチンのソース コード構造を JPUSH の公式ドキュメント (http://docs.jpush.io/) と照らし合わせて分析することをお勧めします。それは私がやったことです。
アプリケーションの登録後、ダウンロードされたサンプル プロジェクトの構造は次のとおりです。
ExampleApplication.java: このクラスは、アプリケーションの Application クラスをカスタマイズします。これは、JPush SDK を呼び出すときに init( ) JPush API が提供する関数であり、公式ドキュメントによると、「init はアプリケーションの起動時に 1 回だけ API を呼び出す必要があります。」そのため、MainActivity で init() を呼び出すと、これも発生する可能性があります。多くの init() 呼び出し。もちろん、定義された ExampleApplication クラスは AndoridManifest.xml で設定する必要があります。
ExampleUtil.java: 名前が示すように、「Util」は、IME コードの取得、APPKEY の取得など、いくつかのグローバル メソッドまたは属性をこのクラスで定義します。
MainActivity.java: これは誰もが知っている、アプリケーションのメイン インターフェイスです。
MyReceiver.java: これは、BroadcastReceiver を継承し、カスタム レシーバー継承クラスです。このクラスが定義されていない場合、ユーザーはプッシュ通知をクリックした後、デフォルトでメイン インターフェイスにジャンプし、カスタム メッセージを受信しません。以下に示すように、このクラスも AndoridManifest.xml で構成する必要があります。
PushSetActivity.java: このクラスは主に、タグやエイリアスの設定、通知バーのスタイルのカスタマイズなど、JPush の「高度なオプション」を設定します。
SettingActivity.java: このクラスは JPush のセットアップも行い、主にプッシュ受信時間を設定します。
TestActivity.java: このクラスはアクティビティを継承し、主にユーザーが受信したプッシュ メッセージを表示するために使用され、ユーザーが通知バーでプッシュ メッセージをクリックすると、このアクティビティにジャンプします。
AndoridManifest.xml を再度分析しましょう。下の図は内容の完全なスクリーンショットです
行 2: Android 名前空間を指定します
行 3: 標準のアプリケーション パッケージ名を指定します (これはデフォルトでもあります)。アプリケーションの名前。ここでのパッケージ名は、src フォルダー内の com.example.jpushdemo パッケージと比較すると混同される可能性があります。実際、Android 開発を専門とする人は、1 つの src に複数のカスタム パッケージを含めることができることを知っています。この com.example.jpush パッケージには、JPush の呼び出し操作のみが含まれています。将来 JPush に慣れてきたら、完全にカスタマイズできます。 JPush の操作は抽出され、カスタム パッケージにカプセル化されます。
行 4: デバイス アプリケーションのバージョン識別コード。アプリを変更するときにカスタマイズできる回数を表す整数値である必要があります。
5 行目: ユーザーがバージョンを表示するには、ある程度の可読性が必要です。
7 行目: 最小バージョン、最大バージョン、ターゲット バージョンなど、アプリケーションで使用する必要がある SDK バージョンを指定します。
行 8 ~ 10: ユーザー権限をカスタマイズします。 android:name="com.lygk.lovelife.permission.JPUSH_MESSAGE" に注意してください。JPush オペレーションのパッケージ名が com.test.jpushdemo の場合、ここでは android:name="com.test.jpushdemo.JPUSH_MESSAGE" になります。実際、これは単なる名前です。このアクセス許可を参照する他の場所で使用されている名前が、このカスタム アクセス許可と一致していることを確認してください。
行 13 ~ 33: アプリケーションに必要な権限のステートメント。これは公式ドキュメントに記載されています。
行 34 ~ 139: アプリケーションの構成ルート要素。アプリケーションに関連するすべての構成要素が含まれます。
35 行目: アプリケーション アイコン
36 行目: アプリケーション名
37 行目: これは自分で定義した Applicationin クラスの名前です。つまり、アプリケーションは com.example.jpushdemo パッケージの下で ExampleApplication を開始します。
行 40 ~ 47: MainActivity.java に対応する、Activity アクティビティ コンポーネント (つまり、インターフェイス コントローラー コンポーネント) の宣言。 Android アプリケーションのすべてのアクティビティは AndoridManifest.xml 構成ファイルで宣言する必要があることに注意してください。宣言しないと、システムはアクティビティを認識または実行できません。
49 行目: PushSetActivity.java
に対応するアクティビティ アクティビティ コンポーネントの宣言
51 行目: SettingActivity.javaに対応するアクティビティ アクティビティ コンポーネントの宣言
53 ~ 58 行目: TestActivity.javaに対応するアクティビティ アクティビティ コンポーネントの宣言
Lines 62-71 : JPush SDK パッケージで定義されている PushActivity.java に対応するアクティビティ アクティビティ コンポーネント宣言。これは、電話機がプッシュ メッセージを受信したときに通知バーに表示されるアクティビティであると完全に疑っています。行 73 ~ 77: Service コンポーネントの宣言タグ。特定の Android サービスを定義および説明するために使用されます。このうち、 android:name は Service サービス クラス名を表し、 android:enabled はサービス スイッチを表し、 android:exported はサービスが他のアプリケーション コンポーネントによって呼び出されるか、サービスと対話できるかどうかを示します。
81 ~ 92 行目: JPush SDK パッケージによって定義された PushService サービスの宣言。
行 95 ~ 113: Boardcast Receiver ブロードキャスト レシーバー コンポーネントの宣言。特定の Android ブロードキャスト レシーバーを定義および説明するために使用されます。 android:name は Boardcast Receiver の受信クラス名を表し、android:enabled は受信スイッチを表します。インテント メッセージ フィルターの
115 行目: Boardcast Receiver ブロードキャスト レシーバー コンポーネントの宣言。ここには AlarmReceiver があります。
行 119 ~ 132: Boardcast Receiver ブロードキャスト レシーバー コンポーネントの宣言 これは、ソース コード パッケージの MyReceiver.java に対応する MyReceiver カスタム ブロードキャスト レシーバーです。
136 行目:
137 行目:
終わり
以上で、Aurora Push公式サイトでアプリケーションを作成する際に自動生成されるサンプルコードのフレームワークを解析しました。これで、自分のアプリケーションに移植する方法が大体わかりました。次のセクションでは、これを修正して自分のデモ プログラムに移植する予定です。
/*************************************************** * *************************************************Luyang Hi-Tech Studio
*ウェブサイトアドレス: www.bigbearking.com
*業務協力QQ: 1519190237
*事業範囲: ウェブサイト構築、デスクトップソフトウェア開発、AndroidIOS開発、画像およびフィルムの後処理、PCBデザイン
* ********************************************** **** ********************************************* ***/
ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

2012年のFacebookによる有名な買収に続いて、Instagramはサードパーティの使用のために2セットのAPIを採用しました。これらはInstagramグラフAPIとInstagram Basic Display APIです。

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています
