かつて私は、顧客がソーシャルネットワークVkontakteを通じてのみフィードバックを維持しているプロジェクトに取り組む機会を得ました。 私はこのソーシャルネットワークの特にアクティブなユーザーではないため、送信されたメッセージの受信速度の点で問題がありました。 たまたま腰を引き、寝台で数日過ごしました。 仰向けになって横たわっている間は特別なことは何もないので、急いでいくつかの問題を解決することにしました。
- リハビリテーション時間を明るくする
- メッセージ配信の問題を解決する
- Javaプログラムを書いてみてください
猫の下で行われたjava治療の結果。
私はJavaでプログラミングしたことがないという事実から始めたいので、私のアプリケーションの天才であるふりをしません。
笑い、快適になり、充電を近づけた後、私はこの素晴らしい言語で最初のアプリケーションを開始しました。
私が最初にやることを決めたのは、通知者用のフレームを作成することでした。 必要なのは、メッセージをポップアップするシンプルなトレイメニューだけでした。
// PopupMenu popup = new PopupMenu(); // MenuItem exitItem = new MenuItem(""); // exitItem.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.exit(0); } }); // popup.add(exitItem); SystemTray systemTray = SystemTray.getSystemTray(); Image image = Toolkit.getDefaultToolkit().getImage("vk_icon.png"); TrayIcon trayIcon = new TrayIcon(image,"VKNotifer",popup); trayIcon.setImageAutoSize(true); // systemTray.add(trayIcon); // trayIcon.displayMessage("VKNotifer", "",TrayIcon.MessageType.INFO);
現在の主なタスクは、現在のメッセージのリストを取得することです。 この目的のために、提供されたapk Vkontakteを使用しました。 apiの基本情報は、
こちらで確認でき
ます 。
apiを使用できるようにするために最初に行うことは
、Vkontakteアプリケーションを作成することです 。その後、トークンを受け取るために必要なアプリケーションのIDを受け取ります。
APIにアクセスする2番目のステップは、トークン自体を取得することです。 これを行うには、アプリケーションで次の手順を実行する必要があります。
- ログイン
- 要求された要件の確認
- トークンを直接取得する
その後、トークンのおかげで、APIメソッドを実行できます。 認証プロセスについては、
こちらをご覧ください。これらの目的のために、VKapiクラスを作成しました。このクラスには、トークンの取得とメッセージのリストの取得という2つのメソッドがあります。
方法1-トークンの取得:
HttpClient httpClient = new DefaultHttpClient();
メッセージAPIのリストを取得するには、Vkontakteには
messages.getメソッドがあり
ます方法2-メッセージのリストを取得する:
クラス全体:
public class VKapi { private String client_id = "2971510"; private String scope = "messages"; private String redirect_uri = "http://oauth.vk.com/blank.html"; private String display = "popup"; private String response_type = "token"; private String access_token; private String email = "******";
あとは、クラスをインスタンス化し、トークンを取得し、無限ループでメッセージリストを受信するだけです。 新しく受信したリストが前のものと異なる場合、新しいメッセージの通知を表示します。
その結果、以下が得られます。
public static void main(String[] args) throws IOException, URISyntaxException, AWTException, InterruptedException, NoSuchAlgorithmException {
ポップアップウィンドウに加えて、サウンドアラートも使用されます。
Tools.playDrum(Drum.d53_Ride_Bell, 127,0);
これを行うには、
このトピックのライブラリを使用します
私はこれが理想的なパフォーマンスではないことを知っていますが、最も重要なことはそれが私の問題を完全に解決したことです。 ご清聴ありがとうございました。