はてなキーワード: Apkとは
www.justgiving.com/page/daily--monopoly-go-dice-links-free-199994
www.justgiving.com/page/monopoly-go-free-dice-rolls-links-today-9994xi
www.justgiving.com/page/daily-nintendo-gift-card-generator-101xss-20049
www.justgiving.com/page/daily-itunes-gift-card-codes-free-172960833ii
www.justgiving.com/page/free-google-play-gift-card-daily-rewards-17d9phkoi
www.justgiving.com/page/daily-fans-free-tiktok-tik-booster-0833iiuuzi
www.justgiving.com/page/daily-500-followers-fans-tiktok-free-likes-17growii
www.justgiving.com/page/1k-followers-fans-instagram-free-likes-99wii
www.justgiving.com/page/free-instagram-followers-fans-likes-real-100-user-zzzio2527
www.justgiving.com/page/cash-app-money-free-codes-earn-daily-555uiw553
www.justgiving.com/page/daily-cash-app-money-free-transfer-speed-apk-17uio29
www.justgiving.com/page/free-roblox-gift-cards-robux-10000-daily-8s8aio333
www.justgiving.com/page/promo-codes-roblox-gift-cards-robux-free-1725iuyi2120
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM?usp=sharing
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE?usp=sharing
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no?usp=sharing
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no
scribehow.com/page/New-Update_V_Bucks_Codes_Free_2024_Fortnite_Skins_Emotes_and_Outfits_In_A_Click__GuIgpSqKRG2simFgkb7P0Q
matters.town/a/fverzduo3udw
www.deviantart.com/jaja22022/journal/Social-Security-benefits-for-the-child-of-a-decea-1111361087
www.justgiving.com/page/daily--monopoly-go-dice-links-free-199994
www.justgiving.com/page/monopoly-go-free-dice-rolls-links-today-9994xi
www.justgiving.com/page/daily-nintendo-gift-card-generator-101xss-20049
www.justgiving.com/page/daily-itunes-gift-card-codes-free-172960833ii
www.justgiving.com/page/free-google-play-gift-card-daily-rewards-17d9phkoi
www.justgiving.com/page/daily-fans-free-tiktok-tik-booster-0833iiuuzi
www.justgiving.com/page/daily-500-followers-fans-tiktok-free-likes-17growii
www.justgiving.com/page/1k-followers-fans-instagram-free-likes-99wii
www.justgiving.com/page/free-instagram-followers-fans-likes-real-100-user-zzzio2527
www.justgiving.com/page/cash-app-money-free-codes-earn-daily-555uiw553
www.justgiving.com/page/daily-cash-app-money-free-transfer-speed-apk-17uio29
www.justgiving.com/page/free-roblox-gift-cards-robux-10000-daily-8s8aio333
www.justgiving.com/page/promo-codes-roblox-gift-cards-robux-free-1725iuyi2120
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM?usp=sharing
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE?usp=sharing
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no?usp=sharing
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no
scribehow.com/page/New-Update_V_Bucks_Codes_Free_2024_Fortnite_Skins_Emotes_and_Outfits_In_A_Click__GuIgpSqKRG2simFgkb7P0Q
matters.town/a/fverzduo3udw
www.deviantart.com/jaja22022/journal/Social-Security-benefits-for-the-child-of-a-decea-1111361087
www.justgiving.com/page/daily--monopoly-go-dice-links-free-199994
www.justgiving.com/page/monopoly-go-free-dice-rolls-links-today-9994xi
www.justgiving.com/page/daily-nintendo-gift-card-generator-101xss-20049
www.justgiving.com/page/daily-itunes-gift-card-codes-free-172960833ii
www.justgiving.com/page/free-google-play-gift-card-daily-rewards-17d9phkoi
www.justgiving.com/page/daily-fans-free-tiktok-tik-booster-0833iiuuzi
www.justgiving.com/page/daily-500-followers-fans-tiktok-free-likes-17growii
www.justgiving.com/page/1k-followers-fans-instagram-free-likes-99wii
www.justgiving.com/page/free-instagram-followers-fans-likes-real-100-user-zzzio2527
www.justgiving.com/page/cash-app-money-free-codes-earn-daily-555uiw553
www.justgiving.com/page/daily-cash-app-money-free-transfer-speed-apk-17uio29
www.justgiving.com/page/free-roblox-gift-cards-robux-10000-daily-8s8aio333
www.justgiving.com/page/promo-codes-roblox-gift-cards-robux-free-1725iuyi2120
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM?usp=sharing
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE?usp=sharing
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no?usp=sharing
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no
scribehow.com/page/New-Update_V_Bucks_Codes_Free_2024_Fortnite_Skins_Emotes_and_Outfits_In_A_Click__GuIgpSqKRG2simFgkb7P0Q
matters.town/a/fverzduo3udw
www.deviantart.com/jaja22022/journal/Social-Security-benefits-for-the-child-of-a-decea-1111361087
www.justgiving.com/page/daily--monopoly-go-dice-links-free-199994
www.justgiving.com/page/monopoly-go-free-dice-rolls-links-today-9994xi
www.justgiving.com/page/daily-nintendo-gift-card-generator-101xss-20049
www.justgiving.com/page/daily-itunes-gift-card-codes-free-172960833ii
www.justgiving.com/page/free-google-play-gift-card-daily-rewards-17d9phkoi
www.justgiving.com/page/daily-fans-free-tiktok-tik-booster-0833iiuuzi
www.justgiving.com/page/daily-500-followers-fans-tiktok-free-likes-17growii
www.justgiving.com/page/1k-followers-fans-instagram-free-likes-99wii
www.justgiving.com/page/free-instagram-followers-fans-likes-real-100-user-zzzio2527
www.justgiving.com/page/cash-app-money-free-codes-earn-daily-555uiw553
www.justgiving.com/page/daily-cash-app-money-free-transfer-speed-apk-17uio29
www.justgiving.com/page/free-roblox-gift-cards-robux-10000-daily-8s8aio333
www.justgiving.com/page/promo-codes-roblox-gift-cards-robux-free-1725iuyi2120
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM?usp=sharing
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE?usp=sharing
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no?usp=sharing
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no
scribehow.com/page/New-Update_V_Bucks_Codes_Free_2024_Fortnite_Skins_Emotes_and_Outfits_In_A_Click__GuIgpSqKRG2simFgkb7P0Q
matters.town/a/fverzduo3udw
www.deviantart.com/jaja22022/journal/Social-Security-benefits-for-the-child-of-a-decea-1111361087
www.justgiving.com/page/daily--monopoly-go-dice-links-free-199994
www.justgiving.com/page/monopoly-go-free-dice-rolls-links-today-9994xi
www.justgiving.com/page/daily-nintendo-gift-card-generator-101xss-20049
www.justgiving.com/page/daily-itunes-gift-card-codes-free-172960833ii
www.justgiving.com/page/free-google-play-gift-card-daily-rewards-17d9phkoi
www.justgiving.com/page/daily-fans-free-tiktok-tik-booster-0833iiuuzi
www.justgiving.com/page/daily-500-followers-fans-tiktok-free-likes-17growii
www.justgiving.com/page/1k-followers-fans-instagram-free-likes-99wii
www.justgiving.com/page/free-instagram-followers-fans-likes-real-100-user-zzzio2527
www.justgiving.com/page/cash-app-money-free-codes-earn-daily-555uiw553
www.justgiving.com/page/daily-cash-app-money-free-transfer-speed-apk-17uio29
www.justgiving.com/page/free-roblox-gift-cards-robux-10000-daily-8s8aio333
www.justgiving.com/page/promo-codes-roblox-gift-cards-robux-free-1725iuyi2120
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM?usp=sharing
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE?usp=sharing
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no?usp=sharing
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no
scribehow.com/page/New-Update_V_Bucks_Codes_Free_2024_Fortnite_Skins_Emotes_and_Outfits_In_A_Click__GuIgpSqKRG2simFgkb7P0Q
matters.town/a/fverzduo3udw
www.deviantart.com/jaja22022/journal/Social-Security-benefits-for-the-child-of-a-decea-1111361087
www.justgiving.com/page/daily--monopoly-go-dice-links-free-199994
www.justgiving.com/page/monopoly-go-free-dice-rolls-links-today-9994xi
www.justgiving.com/page/daily-nintendo-gift-card-generator-101xss-20049
www.justgiving.com/page/daily-itunes-gift-card-codes-free-172960833ii
www.justgiving.com/page/free-google-play-gift-card-daily-rewards-17d9phkoi
www.justgiving.com/page/daily-fans-free-tiktok-tik-booster-0833iiuuzi
www.justgiving.com/page/daily-500-followers-fans-tiktok-free-likes-17growii
www.justgiving.com/page/1k-followers-fans-instagram-free-likes-99wii
www.justgiving.com/page/free-instagram-followers-fans-likes-real-100-user-zzzio2527
www.justgiving.com/page/cash-app-money-free-codes-earn-daily-555uiw553
www.justgiving.com/page/daily-cash-app-money-free-transfer-speed-apk-17uio29
www.justgiving.com/page/free-roblox-gift-cards-robux-10000-daily-8s8aio333
www.justgiving.com/page/promo-codes-roblox-gift-cards-robux-free-1725iuyi2120
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM?usp=sharing
colab.research.google.com/drive/1ED9juCjY-T45cFGVUGQFaqxYDfeOHmnM
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE?usp=sharing
colab.research.google.com/drive/1qmB_R25nAmiXQ408zTUIHWAKONnMH8uE
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no?usp=sharing
colab.research.google.com/drive/1tauh6wsEbkf6XdNTdAcI7V7Il6-l7_no
scribehow.com/page/New-Update_V_Bucks_Codes_Free_2024_Fortnite_Skins_Emotes_and_Outfits_In_A_Click__GuIgpSqKRG2simFgkb7P0Q
matters.town/a/fverzduo3udw
www.deviantart.com/jaja22022/journal/Social-Security-benefits-for-the-child-of-a-decea-1111361087
ここだと有識者が多そうなので、是非お知恵を貸してほしい。
Androidスマホに無線接続した入力デバイスからの入力を置き換えることで、YouTubeやNetflix等のアプリで、巻戻し、早送り、前の動画への移動、次の動画への移動を実現したい。
なお、Galaxyだと標準の設定でマウスからの入力をカスタマイズできるらしいけど、いま使用しているスマホはカスタマイズできない。
※そもそも入力を巻戻し、早送り等の特定機能に紐付けることができるかは不明。
・Google Pixel 7 Pro (Androidバージョンは14)
・Huawei P30 lite(Androidバージョンは不明※いま手元にないが、常に最新にアップデートしている)
実現方法は以下があると思うけど、①だと最も嬉しく、数字が大きくなるほど避けたい方法。
できない場合はできないと教えてもらえると嬉しい。
Google Playでの公開でも、apkを配布しているケースでも、どちらでも可。
該当するアプリがあれば教えてほしい。
そんなデバイスがあれば教えてほしい。
ざっくり要件だけど、以下を実現するアプリを自作するのに参考となるサイトや答え(コード)を教えてほしい。
習得コストも含めてそんなに時間をかけて実装したくないという前提で、どんな言語をどんな環境で実装すればよいかも教えて貰えると嬉しい。
こちらに関しては製品のアップデートも難しいだろうから、ほぼほぼ無理だと思っている。
長くなったけど、有識者がいれば教えて欲しい。
Device Info は、高度なユーザー インターフェースとウィジェットを使用してモバイルデバイスに関する完全な情報を提供するシンプルで強力な Android アプリケーションです。たとえば、デバイス情報/ 電話情報には、CPU、RAM、OS、センサ、ストレージ、バッテリー、SIM、Bluetooth、ネットワーク、インストール済みアプリ、システム アプリ、ディスプレイ、カメラ、温度などに関する情報が含まれます。また、デバイス情報/ 電話情報は、ハードウェア テストでデバイスのベンチマークを行うことができます。
中身 : 👇 👇
👉 ダッシュボード : RAM、内部ストレージ、外部ストレージ、バッテリー、CPU、利用可能なセンサ、インストール済みアプリ & 最適化
👉 デバイス : デバイス名、モデル、メーカー、デバイス、ボード、ハードウェア、ブランド、IMEI、ハードウェア シリアル、SIM シリアル、SIM サブスクライバー、ネットワークオペレータ、ネットワークタイプ、WiFi Mac アドレス、ビルドフィンガープリント & USB ホスト
👉 システム : バージョン、コード名、API レベル、リリース バージョン、1 つの UI バージョン、セキュリティ パッチ レベル、ブートローダー、ビルド番号、ベースバンド、Java VM、カーネル、言語、ルート管理アプリ、Google Play サービスバージョン、Vulkan のサポート、Treble、シームレスな更新、OpenGL ES およびシステム稼働時間
👉 CPU : Soc - システム オン チップ、プロセッサ、CPU アーキテクチャ、サポート対象の ABI、CPU ハードウェア、CPU ガバナー、コア数、CPU 周波数、実行中のコア、GPU レンダラー、GPU ベンダー & GPU バージョン
👉 バッテリー : ヘルス、レベル、ステータス、電源、テクノロジー、温度、電圧と容量
👉 ネットワーク : IP アドレス、ゲートウェイ、サブネット マスク、DNS、リース期間、インターフェイス、周波数、リンク速度
👉 ネットワーク : IP アドレス、ゲートウェイ、サブネット マスク、DNS、リース期間、インターフェイス、周波数、リンク速度
👉 ディスプレイ : 解像度、密度、フォント スケール、物理サイズ、サポートされているリフレッシュレート、HDR、HDR 機能、明るさのレベルとモード、画面のタイムアウト、向き
👉 メモリ : RAM、RAM タイプ、RAM 周波数、ROM、内部ストレージ、外部ストレージ
👉 センサー : センサー名、センサベンダー、ライブセンサ値、タイプ、電力、ウェイクアップセンサ、ダイナミックセンサ、最大距離
👉 アプリ : ユーザーアプリ、インストール済みアプリ、アプリバージョン、最小 OS、ターゲット OS、インストール日、更新日、アクセス許可、アクティビティ、サービス、プロバイダ、レシーバー、抽出アプリ Apk
👉 アプリアナライザー : 高度なグラフを使用して、すべてのアプリケーションを分析します。また、ターゲット SDK、最小 SDK、インストール場所、プラットフォーム、インストーラ、および署名によってグループ化することもできます。
ディスプレイ、マルチタッチ、懐中電灯、ラウドスピーカー、イヤースピーカー、マイク、耳近接、光センサ、加速度計、振動、Bluetooth、WI-Fi、指紋、音量アップボタン、音量ダウンボタンをテストできます。
👉 温度 : システムによって指定されたすべての温度ゾーンの値
👉 カスタマイズ可能なウィジェット : 最も重要な情報を表示する 3 つのサイズの完全にカスタマイズ可能なウィジェット
👉 レポートのエクスポート : カスタマイズ可能なレポートのエクスポート、テキストレポートのエクスポート、PDF レポートのエクスポート
権限 👇 👇
READ_PHONE_STATE - ネットワーク情報を取得するには
BLUETOOTH_CONNECT - Bluetooth テスト
Sunwin | Tải Game Sun Win APK/IOS | Uy tín Hàng Đầu châu Á. Sunwin cổng game bài đổi thưởng số 1 Sunwin ông lớn trong thị trường game tại Việt Nam. Game bài Sunwin được biết đến là sòng bài macau quốc tế thu nhỏ và cho phép người chơi trải nghiệm hoàn toàn miễn phí. Cổng game đổi thưởng đang dẫn đầu về chất lượng trải nghiệm và chất lượng nhất Việt Nam. Hiện nay cổng game bài đổi thưởng Sunwin đã xây dựng cập nhật một hệ thống một cách bài bản ở phiên bản Sunwin 14
iPhoneからandroid(pixel7 pro)に移行したんだけど、フリック精度が悪い
Twitterや5chブラウザや漫画アプリで画像を開いて、次のページに移動するのにフリック操作をするんだけど、iPhoneやiPadminiなら軽くフリックするだけで移動できるのにPixel7だとちょっと強く(?)フリックしないといけない
なんかこういう、ちょっとした操作の精度が全体的に5年前のiPhoneにすら追いついていない
Galaxyも触らせてもらったけど同じような感じ。
iPhoneと違ってapkファイルで簡単に非公式アプリをインストールできる利点が大きすぎるからandroidに移行したことは後悔してないし次もandroidにする予定だけど、もうちょっと頑張ってほしい。
議論がすっ飛んで聞こえると思うけど
如何に効率良くそのゲームを攻略するかという意味でのハッキングは3種類に分かれるのね
ポケモンで言うとさ
その1. 捕獲厳選や孵化厳選:ゲーム外のツール等を用いずに手作業で完結する攻略法。 手作業・人力で再現できることのみ行う
その2. 乱数調整:ゲーム外のツールを用いるが、ゲーム自体には侵襲しない攻略法。 「手作業・人力で再現することは理論上可能だが現実的には不可能」なことを再現する
その3. 改造:ゲーム外のツールによってゲーム自体に侵襲する攻略法。 ツール無しで再現することが理論的に不可能な状態を再現する
通常ガチャマクロに関しての侃侃諤諤の議論は、要は「その2を許容するか否か」が論点だと思うのね。
その1を論難する人は居ないと思う。ゲームが好きな人はみんなそうする
その3を許容する人も居ないと思う。改造apkとかBANされるし
じゃあその2はどうかと言うと、俺は許容されるべきだと考えてる
なぜなら、可能な努力は全て行われるべきだから。ゲームに真剣になれ
もちろんマクロやBOTが、サーバーに大きな負担を掛けたり、他のプレイヤーの迷惑になったり、ゲームバランスを大きく毀損するならその努力は行われるべきでないけど、通常ガチャマクロに関してはセーフだと思う。誰か迷惑した?
直感的にその2に嫌悪を覚える向きも分かる。俺もゲーマーだからその感情は知ってる。
でも「俺が嫌だから、それを公式に禁止させ、他のプレイヤーから努力の選択肢を奪う」って態度がゲーマーとしてフェアで健全かと言われると、そうじゃないだろ?
まあ今回は公式に禁止されるので、運営が想定していなかった遊び方なんだろう、恐らく。それにしては禁止が遅いが。
じゃあな
当エントリはある程度の情報技術リテラシーが必須であり、一部の情報はPC初心者および初級者に推奨できるものではない。
しかしPC初心者および初級者はシステムを壊す、大事なデータを失うなどの手痛い失敗をして成長するのもまた事実であり、もしもプログラミングなどに興味のあるPC初心者および初級者がこの情報を活用する場合はシステムを壊す、大事なデータを失うことを覚悟して実行するように。
チュートリアルに指示通りに進めれば大きな問題はほぼ発生しません。
Chrome OSは初期状態のデフォルトで「ノーマルモード」と呼ばれる一般ユーザーモードですが開発者向けに「デベロッパーモード」が用意されています。
ノーマルモードはChrome OSの様々な制限があり、デベロッパーモードによって制限の解除が可能です。
しかしノーマルモードからデベロッパーモードへ移行するとPowerwash(初期化)されてしまい、システムやユーザー領域へ追加された情報はすべて削除されます。
もしデベロッパーモードが必要な場合はデベロッパーモードの詳細を調べ、現在の情報は削除されてしまうことを念頭に実行しましょう。
ちなみにProject CrostiniのLinuxレイヤーへDebianリポジトリからパッケージを導入するなどにはデベロッパーモードは必要ありませんので多くの場合はノーマルモードのままの運用で十分でしょう。
Android OSアプリやChrome OSアプリを開発したい場合は最初からデベロッパーモードにしたほうが後悔が少ないです。
Chrome OSでは一部のキーがほかのOSでは見慣れないものが並んでいます。
迷いがちなので一番最初に覚えるべきキーボードショートカットは「Ctrl+Alt+?」です。
「Ctrl+Alt+?」でいつでもキーボードショートカットを確認できることだけは覚えておきましょう。
多くのChrome OSデバイスはGoogle Play Storeへ対応しており、Google Play Store経由でAndroid OSアプリ導入が可能です。
しかしながらGoogle Play Storeへ公開されているAndroid OSアプリが必ずしもChrome OSへ最適化しているのか?と言えばそうではなく、Android OSアプリの開発環境であるAndroid StudioがデフォルトでChrome OSでの実行を許可していることもあり開発者が意図せずChrome OSへインストールできてしまうことが大半です。
したがってChrome OSへ導入するAndoirdアプリの動作へ何らかの不具合があったとしても脊髄反射で酷評せず、やんわりと丁寧に博愛精神をもってChrome OSではこうだとアプリ開発者へ情報共有することをオススメします。
多くのAndroidスマートフォンやタブレットはARMアーキテクチャーと呼ばれるものを採用していますが、現在のChrome OSデバイスは高性能な製品になるほどx86(x86_64)アーキテクチャーを採用している傾向があります。
本来コンピューターアプリケーションというものはアーキテクチャーが異なると実行起動動作が不可能ですが、Android OSアプリは異なるアーキテクチャー間でもアプリの実行起動動作が極力可能となるように互換性をだいたい確保しています。
しかしながら例えばARMアーキテクチャー向けのAndoird OSアプリをx86アーキテクチャーなデバイスで実行するとアプリ動作のパフォーマンスが著しく落ることが多いです。
これは高度なグラフィックス機能を必要とするゲームなどで顕著に現れる傾向にあり、Chrome OSでは期待したほどAndroid OSアプリが軽快に動かない可能性を理解しておく必要があるのです。
コロナ禍によって多くのChrome OSデバイスを販売することが出来ましたが、それによってChrome OSデバイス間の性能差が問題視される機会も増えました。
具体的には「インターネット上でChrome OSでの動作報告がなされているAndroidアプリが自身のChrome OSデバイスではインストールできない」といった報告です。
これは一部のAndroidアプリ開発者がデバイス性能によってインストールの許可不許可を決めているために起こることで解決方法は基本的にありませんので諦めましょう。
これから導入するAndroidアプリのためにChrome OSを購入する際は価格につられて低性能すぎるデバイスを購入してしまうと失敗する確率が高まりますので注意が必要です。
ただし、Googleが提供するアプリなどは基本的にそのようなことは無いようです。
設定から「Linux(ベータ版)」で「オンにする」とLinuxのインストールが開始されます。
現在のChrome OS v90ではLinuxレイヤーを実現するProject CrostiniではデフォルトでGPUによる支援機能を実行できません。
Chrome Webブラウザを起動し、URL欄へ「chrome:flags」と入力しアクセスして「Crostini GPU Support」を「Enabled」とし再起動してください。
この変更で動作に不具合を確認した際は設定を元に戻してください。
LinuxにもGoogle Play Storeのような簡単にLinuxアプリを導入できる環境が存在します。
GUIパッケージマネージャーを導入する場合は「ターミナル」を起動し下記を実行してください。
sudo apt install synaptic gnome-software
Chrome OSとLinuxレイヤーではパッケージの導入先がデフォルトで海外のサーバーになっており少々遅いです。
日本国内のサーバーへ変更することで速度を改善できる可能性があります。その際は「ターミナル」を起動し下記を実行してください。
現在のChrome OS v90ではChrome OSとLinuxレイヤーを実現するProject Crostiniで日本語入力を共有できず、キーボード入力しても英字しか印字されません。
日本語入力をするには別途に日本語インプットメソッドと日本語フォントが必要です。
日本語インプットメソッドと日本語フォントを導入する場合は「ターミナル」を起動し下記を実行してください。
Linuxへ詳しい方はfcitx5のほうが何かと問題が少ないでしょう。
しかし一部のfcitx5向けパッケージがDebian公式リポジトリに存在しない可能性があるのでご注意ください。
KVMやLXC、Dockerなどの仮想環境を幾度か試しましたが、仮想環境を構築したProject CrostiniのLinuxレイヤーを再起動するなどによってProject CrostiniのLinuxレイヤーシステムへ致命的な破壊が起きることがあるのを何度か確認しています。
Project CrostiniのLinuxレイヤー自体が仮想環境のため、Chrome OSのシステムが破壊されるわけではないですが業務利用時にLinuxレイヤーシステムの破壊が起きてしまうと困ってしまうので仮想環境構築は推奨できません。
仮想環境によって開発環境の統一を計っている現場では開発デバイスとしてChrome OSデバイスは利用しないほうが良いでしょう。
ただし、Chrome OSデバイスは実質的にAndroid OSデバイス、タッチスクリーンデバイス、キーボード付きデバイス、タブレットデバイス、ノートPCデバイス、コンバーチブルデバイス(いわゆる2in1)、マルチタスクデバイス、ウィンドウ可変デバイス、タッチスタイラスペン付きデバイスとして機能する可能性を秘めていますので実機デバッグ用デバイスとしては非常に価値があります。
昨今はアスペクト比が16:9でないどころかリアルタイムに可変してしまうデバイスが物凄く増えていますのでスマートデバイス向けアプリを開発する現場ではデバッグ用として1台持っていても全く損しないデバイスかと思われます。
さらに言えばティーン層はGIGAスクール構想によりChrome OSでプログラミング学習をしているわけですからティーン層取り込みのためのUI開発にも使えるのではないかと考えます。
7と8。
技術的なところが気になる人はこれだけ読んでくれたらいい
最後に技術的な観点からエアレペルソナが純国産ではないということを指摘する。
RocketChatという海外で開発されたOSSチャットアプリをフォーク、改変したもののよう。
ttps://github.com/RocketChat/Rocket.Chat.ReactNative
ttps://rocket.chat
フォーク元はバリバリ多国籍、外資である。(RocketChat自体は問題のないアプリであり、このエアレペルソナとはフォーク関係を超える関係はないと思われる)
冒頭のこの部分に関してである。
ttps://play.google.com/store/apps/details?id=chat.airlex.reactnative
Google Playで公開されているエアレペルソナのAndroidアプリをリバースエンジニアリングして調べてみた。
ちなみに、エアレペルソナには利用規約のようなものは見当たらず、リバースエンジニアリング禁止条項も無いようだった。
ttps://apps.evozi.com/apk-downloader/
ttps://github.com/pxb1988/dex2jar
この辺を使ってapkをダウンロードし、apkを解凍し、chat.airlex.reactnative/classes.dexをjar fileに変換した。
classes.dexから変換されたjarファイルを展開するとchat/airlex/reactnativeというフォルダ、パッケージが見つかる。
このパッケージ内のファイル(.class、クラス)がエアレペルソナの処理を行うもののようである。
このクラスをJadを使い、デコンパイルしてみた。その結果が以下である。
ちなみにここからapkをアップロードするとdex2jarをしなくてもJavaのソースコードにまでデコンパイルしてくれた。便利。
package chat.airlex.reactnative; import android.content.Context; import com.ammarahmed.mmkv.SecureKeystore; import com.facebook.react.bridge.ReactApplicationContext; import com.tencent.mmkv.MMKV; public class Ejson { private String TOKEN_KEY = "reactnativemeteor_usertoken-"; String cardId; String host; String messageId; String messageType; /* access modifiers changed from: private */ public MMKV mmkv; String msg; String notificationType; String rid; Sender sender; String senderName; String type; public Ejson() { ReactApplicationContext reactApplicationContext = CustomPushNotification.reactApplicationContext; if (reactApplicationContext != null) { MMKV.initialize((Context) reactApplicationContext); new SecureKeystore(reactApplicationContext).getSecureKey(C0617Utils.toHex("com.MMKV.default"), new RNCallback() { public void invoke(Object... objArr) { if (objArr[0] == null) { MMKV unused = Ejson.this.mmkv = MMKV.mmkvWithID("default", 1, objArr[1]); } } }); } } public String getAvatarUri() { if (this.type == null) { return null; } return serverURL() + "/avatar/" + this.sender._id + "?rc_token=" + token() + "&rc_uid=" + userId(); } public String token() { String userId = userId(); MMKV mmkv2 = this.mmkv; return (mmkv2 == null || userId == null) ? "" : mmkv2.decodeString(this.TOKEN_KEY.concat(userId)); } public String userId() { String serverURL = serverURL(); MMKV mmkv2 = this.mmkv; return (mmkv2 == null || serverURL == null) ? "" : mmkv2.decodeString(this.TOKEN_KEY.concat(serverURL)); } public String privateKey() { String serverURL = serverURL(); MMKV mmkv2 = this.mmkv; if (mmkv2 == null || serverURL == null) { return null; } return mmkv2.decodeString(serverURL.concat("-RC_E2E_PRIVATE_KEY")); } public String serverURL() { String str = this.host; return (str == null || !str.endsWith("/")) ? str : str.substring(0, str.length() - 1); } public class Sender { String _id; String username; public Sender() { } } }
フィールド名を見てみると、cardId, host, messageId, messageType, mmkv, msg, notificationType, rid, sender, senderName, typeが存在する。
メソッドには、getAvaterUri、token、userId、privateKey、severURLが存在する。
ところで、RocketChatというOSSのチャットアプリが存在する。
ttps://rocket.chat
そのRoketChatのAndroid実装の中に同名のEjsonというクラスが存在する。
ttps://github.com/RocketChat/Rocket.Chat.ReactNative
ttps://github.com/RocketChat/Rocket.Chat.ReactNative/blob/develop/android/app/src/play/java/chat/rocket/reactnative/Ejson.java
見比べてみると、フィールドにcardIdが追加されている以外はフィールドやメソッド名、そしてその処理の内容まで一致している。
他にもReplyBroadcastなど、同様のクラスがエアレペルソナに見つかる。
以上のことからエアレペルソナはRocketChatをフォークして、パッケージ名を変えて作られたチャットアプリであり、開発の大部分はRocketChat社の努力と多数のOSSコントリビュータによってなされたものであると思われる。
そもそもこのOSS時代に純だの何だの言っている時点で怪しい。
さて、エアレペルソナがRocketChatをフォークして作られたものであるとすると、気になるのはライセンスである。
RocketChatのOSSライセンスはMITライセンスである。
ttps://github.com/RocketChat/Rocket.Chat.ReactNative/blob/develop/LICENSE
MITライセンスは非常に緩いライセンスであるため、エアレペルソナの様にフォークして別のアプリケーションとして公開することにはおそらく問題がないということは強調しておく。
現状エアレペルソナにログインできておらず(2要素認証のコードが送信されないといった問題が起きている模様)、使用している各OSSのライセンス表示が適切に行われているかまでは調べられていない。
昨今はAppleのApp StoreやGoogleのGoogle Play Store上での問題が注目を集めている。大きな組織によって自分たちの首根っこが抑えつけられ自由を侵害されるというのは今に始まったことではないが、ここに関する反発は日々強まってきていると感じる。大きな組織がさらなる大きな力を持ち、中央集権を強めるなかで我々が模索し目指さなければならないのは脱中央集権、非中央集権である。自分たちの在り方は自分たちで決めるし自分たちの個人情報は自分たちに権利があるのだ。
Mastodonという非中央集権なSNSがある。プロジェクトはオープンソースで誰もがMastodonのサーバーをホストすることができる。このサーバーたちは相互に繋がることができるので違うサーバーであってもメッセージを送り合うことができる。
今回問題になったのは、Google Play上で公開されているいくつかのMastodon向けクライアントだ。これらのアプリはGoogleの主張によれば「ヘイトスピーチ」に関する内容を含んでいるため改善しろ、というものであった。クライアントはただサーバーにアクセスするだけである。ユーザーがアクセスしているサーバーにはGoogleが指摘するようなヘイトスピーチを扇動するようなサーバーがあるかもしれないが、それを理由にGoogleが該当サーバーをホストしている訳ではないアプリ開発者に対して改善をするよう脅迫するのは理不尽である。彼らのGoogle Chromeでもこれらのサーバーにアクセスすることは可能であり、ただクライアントがWebページを表示しているのとなんら変わりない。Googleの主張からすれば、彼らのGoogle Chromeも同様に取り締まられるべきだ、と言えてしまう。
今回の問題は既に一度議論されたことがある。Gabという極右コミュニティがMastodonを使ってMastodonを始めとしたネットワークに参入してきた。これを機にMastodon創始者のオイゲン氏はGabをサーバー管理者やクライアント開発者に排除するよう呼びかけた。サーバー管理者やクライアント開発者はGabをブロックしたりしなかったりした。サーバー同士で繋がることができると言っても例えば日本語と英語とで言語圏の違ったりと接点が無い場合はわざわざブロックする必要はないだろうということだ。またはサーバー管理者がわざわざブロックしなくともユーザーが各自に対応する自由な判断に任せるということもある。クライアントはただサーバーにアクセスするだけであるからハードコーディングによってそれらを排除するのはナンセンスであるし、この行動はユーザーの自由を制限することであるからやるべきではないという意見もあった。一方でGabにアクセスすることができることを理由にApp StoreやGoogle Play Storeからアプリを削除されてしまうのではないかという意見もあった。ただこの懸念はただのクライアントに対して合理性を持たないだろうと思われていたがその懸念が愚かなことに現実となってしまった。
さて幸いなことに今回の問題はGoogle Play上で起こったものである。Google Play Storeを使わなくてもAndroid端末にインストールすることができる。F-DroidやAPKの配布などインストールする手段は残されている。これがApp Storeでの問題ならば開発者とユーザーに残された生き残る手段はないだろう。
2017年頃にMastodonが注目された頃に比べて大きなメディアがMastodonを取り上げることはめっきりなくなった。国内で言えばITmediaがよく特色のある記事を書いていたが今では全く更新されることはなくなってしまった。mstdn.jp の管理者が変わったことの詳細な記事がITmediaから出ると期待しているが既に変更されてから2ヶ月が経とうとしている。仕方がないよね。Fediverseの思想がいくら素晴らしくても金にならないんだもの。金にならない話は注目されない。記事にする価値はない。世の中は金の話が本質的に価値を持つのか?
Mastodonに対するメディアの関心というは昔に比べて低くなったものの今回の問題はHacker Newsにて大きな注目を集めているのでメディアに取り上げてもらって大きな世論を形成していって欲しい。ITmediaはGabとMastodonについての記事を書いてくれなかったので期待することさえ無駄だろうが。
Subway Tooter blog - Playストアからの削除警告について - Subway Tooter blog
http://subwaytooter.hatenadiary.jp/entry/2020/08/29/113948
Google is apparently taking down all/most Fediverse apps from the Play Store | Hacker News
https://news.ycombinator.com/item?id=24304275
How the biggest decentralized social network is dealing with its Nazi problem - The Verge