Android Market APIでAPKを取得することが出来るのであれば
サーバーでAPK取得
→ 端末でAPKダウンロード
→ APKをインストールするためのIntent発行
で可能だと思います。
この場合端末の設定にある「提供元不明のアプリ」に
チェックが入っている必要があります。
APKを取得できないのであれば
該当のアプリを表示するIntentを発行
→ マーケットアプリからユーザーがインストール
以外の方法は無いと思われます。
2011年11月9日15:23 やまだ <taroya...@gmail.com>:
> --
> このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
> このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
> このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。
>
>
> 端末へ表示→端末のインストールボタン押下
という部分がマーケットアプリで良いのであれば、以下のような Intent を
startActivity に渡すことで実現可能です。
String packageName = "com.example.app"; // たとえば
Uri uri = Uri.parse("market://details?id=" + packageName);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
NEW_TASK フラグ付けたほうがいいとか、startActivityForResult() にするとかは
お好みで。
2011/11/9 やまだ <taroya...@gmail.com>:
> --
> このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
> このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
> このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。
>
>
--
YAMAZAKI Makoto
興味があったんで調べて見ました。
真っ当な方法は、見つかりません。
以下、3つの方法が考えられます。
①rootを奪取する。
②アプリにINSTALL_PACKAGESを付与する。
③adbを活用する。
自分は、いずれも実現できません。
返信遅くなってしまい申し訳ありません。
諸事情によりこの場でそのアプリ名は公開できないのですが
直接gmailに送らせて頂けるのであれば情報を送らせて頂きます。
申し訳ありませんが、よろしくお願い致します。
また、ソースを解析していて
http://typex2.wordpress.com/2009/09/29/android-market%E3%81%AE%E3%83%8F%E3%83%83%E3%82%AF%E4%BA%8B%E6%83%85%EF%BC%9Avending%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E4%BD%BF%E3%82%8F%E3%81%9A%E3%81%ABandroid-market%E3%81%AE%E3%83%95%E3%83%AA/
でtypex20様が書かれている方法で行なっているんだと思いました。
しかし、その場合においてもプログラム的にUserIdを取得する方法がわかりません。
ご返信有難うございます。
スマコレというアプリは知らなかったのですが、こちらはどこからインストールできますでしょうか?
マーケットで検索しても見つからなかったのですが。。。
すみませんが、よろしくお願い致します。
興味のある話題だったのでずっとROMしてましたが、プリインアプリの話でしたか。
プリインアプリなら、Androidの隠しAPIにあるPackageManager#installPackageが使えます。
AndroidのOS全体をコンパイルするときに、packages/以下にあるプリインアプリなら利用でき、一般のアプリでは利用できません。
/data/appにインストールされるアプリでは無く、/system/app以下にインストールされるアプリなら可能と言うことです。
AndroidMarketのMarketアプリも、このAPIを使用しているはずです。
それでは
2011年12月7日11:15 やまだ <taroya...@gmail.com>:
> --
installPackageは存じていましたが「提供元不明~」のチェックがなくてもいけるのは
また少し違う何かがあるのかなと思います。
また、初めの質問と少しずれてきてしまったので話を戻したいと思います。
UserIdさえプログラムから取得できれば解決するような気がしているのですけどねぇ。。。
On 12月7日, 午前11:54, sakamoto toshiyuki <sakamoto.n...@gmail.com> wrote:
> こんにちは。坂本といいます。
>
> 興味のある話題だったのでずっとROMしてましたが、プリインアプリの話でしたか。
>
> プリインアプリなら、Androidの隠しAPIにあるPackageManager#installPackageが使えます。
> AndroidのOS全体をコンパイルするときに、packages/以下にあるプリインアプリなら利用でき、一般のアプリでは利用できません。
> /data/appにインストールされるアプリでは無く、/system/app以下にインストールされるアプリなら可能と言うことです。
> AndroidMarketのMarketアプリも、このAPIを使用しているはずです。
>
> それでは
>
> 2011年12月7日11:15 やまだ <taroyamada...@gmail.com>:
可能性ですが
2011年12月7日14:36 やまだ <taroya...@gmail.com>:
--
--
Toru Tashiro
toru...@gmail.com
確かにキャリアが公式でやってるのだから可能性としてはありそうですよね。
普通の会社じゃ無理でしょうが。
On 12月7日, 午後2:53, 田代透 <toru2...@gmail.com> wrote:
> SoftBankはスマセレ用の隠しマーケットでも作っているのじゃないでしょうか。
> Googleのマーケット以外の特定のマーケットを提供元不明ではないと設定してあるとか
> スマセレアプリはルート特権で動くようになっているとか
>
> 可能性ですが
>
> 2011年12月7日14:36 やまだ <taroyamada...@gmail.com>:
高見知英です。
アプリケーションの(提供元不明の...をチェックしないでの)インストールには、INSTALL_PACKAGESという権限が必要です。
この権限はprotectionLevelがsignatureOrSystemとなっており、このprotectionLevelに設定された権限を行使できるのは「プリインストール(/system/app配下)アプリかそれと同じ署名を持つアプリ」のみです。
ソフトバンクのスマセレ、auのau one marketなどはそれを使用していると思われます。
概要はわたしのブログにも記載しておりますのでご覧ください。
http://d.hatena.ne.jp/TakamiChie/20111117/1321540557
一般の開発者がこの権限を使用することはできないため、
・マーケットに誘導してダウンロードさせる
・ユーザーに「提供元不明の...」の設定にチェックしてもらう
・(adbを使ってもよければ)adb installを使う
・(端末がroot取得済みであれば)/system/appにアプリをインストールしてINSTALL_PACKAGESを行使する
などといった形での対応となると思われます。
以上です。
--
横浜IT勉強会 高見知英
メール:ch...@tamago.soup.jp
Web:http://Onpu.jpn.ch/
Tw: @TakamiChie ハマっち:16872
Skype:TakamiChie
t2lowと申します。
やまださんが行いたいのは、AppBrainというアプリの動作が近いのではないかと思います。
https://market.android.com/details?id=com.appspot.swisscodemonkeys.apps
AppBrainはAndroid Marketでダウンロード可能なアプリですが、バックグラウンドでのアプリインストールを実現しています。
どういった仕組みなのかはわかりません。
最初にGoogleアカウントでログインさせるので、何かAPIがあるのかもしれません。
システム権限がなくてもGoogleアカウントでの認証さえおこなえば、同じことができそうな気がするのですが浅知恵でしょうか。
以上です。
rootを取得したり、adbを使ったりというのはちょっと無理そうです。
やはり、妥協してマーケットへ移動させて一つ一つインストールというのが現実的ですかね~。
t2low様
はい、こちらのFast Web Installerの挙動が、私のやりたい事そのままだと思います。
AccountManagerを使って許可を求める画面が表示されますが、
結局はUserIDを取得するためにアカウントを使っているのかなと勝手に想像してました。
どうやってやっているのか解析してみようと思います。
On 12月7日, 午後8:43, Tetsuro Nakamura <t2lo...@gmail.com> wrote:
> t2lowと申します。
>
> やまださんが行いたいのは、AppBrainというアプリの動作が近いのではないかと思います。
>
> https://market.android.com/details?id=com.appspot.swisscodemonkeys.apps
>
> AppBrainはAndroid Marketでダウンロード可能なアプリですが、バックグラウンドでのアプリインストールを実現しています。
> どういった仕組みなのかはわかりません。
> 最初にGoogleアカウントでログインさせるので、何かAPIがあるのかもしれません。
> システム権限がなくてもGoogleアカウントでの認証さえおこなえば、同じことができそうな気がするのですが浅知恵でしょうか。
>
> 以上です。
> 2011/12/07 18:51 "高見知英" <c...@tamago.soup.jp>:
>
>
>
>
>
>
>
> > 高見知英です。
>
> > アプリケーションの(提供元不明の...をチェックしないでの)インストールには、INSTALL_PACKAGESという権限が必要です。
>
> > この権限はprotectionLevelがsignatureOrSystemとなっており、このprotectionLevelに設定された権限を行使でき るのは「プリインストール(/system/app配下)アプリかそれと同じ署名を持つアプリ」のみです。
> > ソフトバンクのスマセレ、auのau one marketなどはそれを使用していると思われます。
> > 概要はわたしのブログにも記載しておりますのでご覧ください。
> >http://d.hatena.ne.jp/TakamiChie/20111117/1321540557
>
> > 一般の開発者がこの権限を使用することはできないため、
> > ・マーケットに誘導してダウンロードさせる
> > ・ユーザーに「提供元不明の...」の設定にチェックしてもらう
> > ・(adbを使ってもよければ)adb installを使う
> > ・(端末がroot取得済みであれば)/system/appにアプリをインストールしてINSTALL_PACKAGESを行使する
>
> > などといった形での対応となると思われます。
>
> > 以上です。
> > --
> > 横浜IT勉強会 高見知英
> > メール:c...@tamago.soup.jp
> > Web:http://Onpu.jpn.ch/
> > Tw: @TakamiChie ハマっち:16872
> > Skype:TakamiChie
> > 2011/12/07 17:53 "やまだ" <taroyamada...@gmail.com>:
> >> > >> > このグループから退会するには、android-group-j...@googlegroups.comにメールを送信してくださ い。
> >> > >> > 詳細については、http://groups.google.com/group/android-group-japan?hl=ja
> >> からこのグループにアクセスしてください。
>
> >> > > --
> >> > > このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
> >> > > このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
> >> > > このグループから退会するには、android-group-j...@googlegroups.comにメールを送信してくださ い。
> >> > > 詳細については、http://groups.google.com/group/android-group-japan?hl=ja
> >> からこのグループにアクセスしてください。
>
> >> > --
> >> > --
> >> > Toru Tashiro
> >> > toru2...@gmail.com
>
> >> --
> >> このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
> >> このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
android1.6であれなんですが、c2dmか
in-app-billingsが怪しいです。
そのアプリは、android2.2では、ないですか。
そのアプリは、c2dmでは、ないですか。
c2dmは、プッシュだけでなく、ネットワーク
越えのインテントを実現してると聞いてます。
それなら、アプリのインストールも
実装しなければ、辻褄が合いません。
vendor.apkには、INSTALL_PACKAGESの
パーミッションが付いてるはず。
c2dmのインテントをvender.apkが受け取る
パーミションがあるはずです。
android2.2ないので、調査は、継続出来ません。
> -----Original Message-----
> From: android-g...@googlegroups.com
> [mailto:android-g...@googlegroups.com]On Behalf Of やまだ
> Sent: Thursday, December 08, 2011 9:25 AM
> To: 日本Androidの会
> Subject: [work] [android-group-japan: 15659] Re: アプリの自動インストー
> ル
>
>
> 高見様
>
> rootを取得したり、adbを使ったりというのはちょっと無理そうです。
> やはり、妥協してマーケットへ移動させて一つ一つインストールというのが現実的
私の調査しているアプリとFast Web Installerについて調べました。
c2dmは使用されていましたが、インストールとは無関係に見えました。
■前者
起動時に開発者へメッセージを送信しているのみ
調査目的っぽくみえました。
■Fast Web Installer
Appリストの同期の為に使用されているように見受けられました。
webでAppリストが更新されたらc2dmのメッセージを受信してAndroid側のリストも更新という感じです。
vendor.apkにINSTALL_PACKAGESのパーミッションは付いていると思います。
また、webのAndroidマーケットから端末へインストールができるのも
c2dmで必要なIDを渡しているからだと思うのですがいかがでしょうか?
> ...
>
> もっと読む ≫
以下のアプリを、インテントフィルターが
見えるように、更新しました。ver1.1
vendor.apkのインテントフィルターにc2dmの
パーミションを発見頂ければ、幸いです。
何度も言いますが、android2.2は持ってないです。
https://market.android.com/developer?pub=Ohisamallc
another package info
> > > > >> > > このグループから退会するには、
> > > android-group-j...@googlegroups.comにメールを送信してくだ
> さ
> > い
> > > 。
> > > > >> > > 詳細については、
> >
> > http://groups.google.com/group/android-group-japan?hl=ja> >> からこのグ
ル
> ープにアクセスしてください。
> >
> > > >> > --
> > > >> > --
> > > >> > Toru Tashiro
> > > >> > toru2...@gmail.com
> >
> > > >> --
> > > >> このメールは Google グループのグループ「日本Androidの会」の登録者に
> 送ら
> > れています。
> > > >> このグループに投稿するには、android-g...@googlegroups.com に
> メー
> >
> > ルを送信してください。> >> このグループから退会するには、
> >
> > android-group-j...@googlegroups.comにメールを送信してくださ
> > い。> >> 詳細については、
> >
> > http://groups.google.com/group/android-group-japan?hl=jaからこのグループ
> にア
> > クセスしてください。
> >
> > > >> --
> > > > このメールは Google グループのグループ「日本Androidの会」の登録者に
送
> ら
> > れています。
> > > > このグループに投稿するには、android-g...@googlegroups.com に
メ
> ー
> >
> > ルを送信してください。> > このグループから退会するには、
> >
> > android-group-j...@googlegroups.comにメールを送信してくださ
> > い。
> >
> >
> >
> >
> >
> >
> >
> > ...
> >
> > もっと読む ≫
>
> --
> このメールは Google グループのグループ「日本Androidの会」の登録者に送られ
て
> います。
> このグループに投稿するには、android-g...@googlegroups.com にメール
を
ご返信有難うございます。
もう一度同じ事を書きます。
c2dmかと思いますが、それにはサーバーへのリクエストが必要ですよね?
それには必要なIDがあり、その中のUserIDをプログラム上で取得する方法がわからないということです。
> い)...
>
> もっと読む ≫
--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このディスカッションをウェブ上で閲覧するには、https://groups.google.com/d/msg/android-group-japan/-/CSrsmuIMjDUJ にアクセスしてください。
このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。