ページ「Xamarin.AndroidでFirebase Cloud Messagingを使う」と「BlueStacks」の間の差分

提供: MonoBook
(ページ間の差分)
ナビゲーションに移動 検索に移動
(ページの作成:「Firebase Cloud Messaging(FCM)はAndroidアプリやiOSアプリなどに対してプッシュ通知の一斉配信を簡単に実装できるスグレモノ…」)
 
 
1行目: 1行目:
[[Firebase Cloud Messaging]](FCM)はAndroidアプリやiOSアプリなどに対して[[プッシュ通知]]の一斉配信を簡単に実装できるスグレモノ。
+
'''BlueStacks'''とは、[[Windows]]および[[macOS]]上で動く[[Android]]の[[エミュレーター]]である。
  
FCMは[[Xamarin.Android]]からも簡単に利用できる。
+
== 概要 ==
マジオススメ。
+
いたって普通の[[Android]]の[[エミュレーター]]である。
 +
[[エミュレーター]]なのに[[Google Play]]を標準搭載している。
 +
スマホゲームを違和感なくPCで遊べるようにするのが主目的らしい。
  
== 大雑把な流れ ==
+
[[Qualcomm]]や[[AMD]]、[[Intel]]などの半導体企業が出資している。
# メッセージを自前サーバーなどからGoogleのFCMサーバーに送信、またはFCM管理画面からメッセージを作り送信
 
# GoogleのFCMサーバーからAndroidデバイスに送信
 
# AndroidデバイスはブロードキャストインテントでAndroidアプリに送信
 
# Androidアプリが処理をする
 
  
== 大雑把な制限 ==
+
== ビジネスモデル ==
* メッセージ長は最大4KB
+
通常はBlueStacksを起動してアプリを起動するという手順となる。
  
== 大雑把な導入手順 ==
+
これとは別にBlueStacksの存在を利用者に意識させずにスマホアプリをPCアプリかのごとく起動できる「BlueStacks inside」なるシステムを法人向けに販売しているらしい。これを使えばスマホアプリを作るだけで移植作業が不要になるスグレモノだそうだ。
[[MSDN]]にも同様の説明があるが日本語版は機械翻訳なのか意味不明すぎるので英語版を読んだ方がわかりやすい。
 
* https://docs.microsoft.com/en-us/xamarin/android/data-cloud/google-messaging/remote-notifications-with-fcm?tabs=macos
 
  
=== アプリに権限を追加する ===
+
== 使用感 ==
アプリに以下の権限を追加する。GoogleのFCMサーバーを経由してのプッシュ通知なので[[インターネット]]に繋がっている必要がある。
+
Android SDKに付属のエミュレーターをシンプルにした感じ。
* Internet
 
  
=== アプリにパッケージを追加する ===
+
初回起動はめっちゃ遅い。
アプリにNuGetから以下の2つのパッケージを追加する。
+
2回目以降はそこそこ速い。
* Xamarin.GooglePlayServices.Base
 
*: AndroidデバイスがGoogle Play対応機種かの判別に使用
 
* Xamarin.Firebase.Messaging
 
*: FCMそのもの
 
  
=== Firebaseに新しいプロジェクトを作る ===
+
ウインドウサイズは固定。
ウェブブラウザでFirebaseの管理画面を開き、新しいプロジェクトを作る。
+
設定画面で解像度とDPIを指定するとその解像度の等倍表示となる。
* https://console.firebase.google.com
+
ウインドウの右下あたりをドラッグ・アンド・ドロップしても無駄である。
  
新しいプロジェクトを作る際にAndroidアプリ(のパッケージ名)を登録する。
+
=== Minecraft ===
このパッケージ名宛にメッセージが届くようになる。
+
Google Play StoreからMinecraftを入れてみたが、Mac mini (Mid 2011)でもサクサク動く。
 +
ただしMinecraftは回転操作がタッチ前提なのでマウスでの操作性は絶望的に悪い。
 +
Mac版ではゲームパッドもサポートされていない。
  
一通り登録が終わると「google-services.json」がダウンロードできる。
+
そこらへんを改善できるか試行錯誤してみた。
Visual Studio for Mac上のプロジェクトに「google-services.json」を追加し、ビルドアクションを「GoogleServicesJson」と設定する。ビルドアクション一覧に「GoogleServicesJson」が表示されないバグらしきものがあったが、ソリューションを閉じてから再度開いたら表示された。
+
* [[MacにBlueStacksを入れてMinecraft BEを遊んでみる]]
 
 
=== プログラムを実装する ===
 
[[ソース読め]]。
 
* https://developer.xamarin.com/samples/monodroid/Firebase/FCMNotifications/
 
 
 
== 参考 ==
 
* Firebase Cloud Messaging
 
*: https://firebase.google.com/docs/cloud-messaging/
 
 
 
[[category: Xamarin.Android]]
 

2019年9月28日 (土) 05:34時点における版

BlueStacksとは、WindowsおよびmacOS上で動くAndroidエミュレーターである。

概要

いたって普通のAndroidエミュレーターである。 エミュレーターなのにGoogle Playを標準搭載している。 スマホゲームを違和感なくPCで遊べるようにするのが主目的らしい。

QualcommAMDIntelなどの半導体企業が出資している。

ビジネスモデル

通常はBlueStacksを起動してアプリを起動するという手順となる。

これとは別にBlueStacksの存在を利用者に意識させずにスマホアプリをPCアプリかのごとく起動できる「BlueStacks inside」なるシステムを法人向けに販売しているらしい。これを使えばスマホアプリを作るだけで移植作業が不要になるスグレモノだそうだ。

使用感

Android SDKに付属のエミュレーターをシンプルにした感じ。

初回起動はめっちゃ遅い。 2回目以降はそこそこ速い。

ウインドウサイズは固定。 設定画面で解像度とDPIを指定するとその解像度の等倍表示となる。 ウインドウの右下あたりをドラッグ・アンド・ドロップしても無駄である。

Minecraft

Google Play StoreからMinecraftを入れてみたが、Mac mini (Mid 2011)でもサクサク動く。 ただしMinecraftは回転操作がタッチ前提なのでマウスでの操作性は絶望的に悪い。 Mac版ではゲームパッドもサポートされていない。

そこらへんを改善できるか試行錯誤してみた。