約 4,231,011 件
https://w.atwiki.jp/marowiki001/pages/1630.html
目次 【時事】ニュース渡辺麻友=android MAYUYU code-CG-3 3型目渡辺麻友 RSS渡辺麻友=android MAYUYU code-CG-3 3型目渡辺麻友 口コミ渡辺麻友=android MAYUYU code-CG-3 3型目渡辺麻友 【参考】関連項目 タグ 最終更新日時 【時事】 ニュース 渡辺麻友=android MAYUYU code-CG-3 gnewプラグインエラー「渡辺麻友=android MAYUYU code-CG-3」は見つからないか、接続エラーです。 3型目渡辺麻友 運上弘菜「何をかけ合わせても、まっさらで」 HKT48、9月の名言 - 西日本新聞 渡辺麻友NHK「なつぞら」で三村茜役/写真特集 - AKB48 - ニッカンスポーツ AKB48渡辺麻友と柏木由紀が本音で語る「女の子同士の友情」とは? - PR TIMES 「AKB0048」に植田佳奈、白石涼子、能登麻美子が参加 - ナタリー RSS 渡辺麻友=android MAYUYU code-CG-3 gnewプラグインエラー「渡辺麻友=android MAYUYU code-CG-3」は見つからないか、接続エラーです。 3型目渡辺麻友 #gnews plugin Error gnewsは1ページに3つまでしか使えません。別ページでご利用ください。 口コミ 渡辺麻友=android MAYUYU code-CG-3 #bf 3型目渡辺麻友 #bf 【参考】 関連項目 項目名 関連度 備考 参考/AKB0048 ★★★★ 登場作品 参考/田村ゆかり ★★★ キャスト タグ キャラクター 最終更新日時 2013-05-07 冒頭へ
https://w.atwiki.jp/android-api/pages/58.html
PandoraTV for Android-今話題の最新UCCや数多くの動画を、何時何処にいても自由に楽しめるモバイルライフ-パンドラTVモバイルアプリケーション パンドラTVをスマートフォンで見たい方のアプリ。 Android OS 2.2以上 最新のホットな人気動画をリアルタイムで鑑賞! マイチャンネル、プレイリスト機能を通して、より便利で快適にお楽しみください。 5 00万コンテンツの波に乗って、動画の海、パンドラTVの中へ!! フェイスブック、ツイッター 、 メールで面白い映像を友達と簡単に共有できます。 ★★★プレミアム会員案内★★★ 既にPCでプレミアムサービスに登録済みの会員様には、PC同様のネットワーク優先権が適用され、 Androidアプリご利用の際にも、途切れなくスムーズに動画をご覧いただけます。 アクセスが混み合う場合、非ログイン状態でご利用の方及び一般会員の方には動画再生がスムーズでないことがございますので、ご了承願います。 プレミアムサービスのご利用をお求めの場合、www.pandora.tvにアクセスし、 プレミアム会員にご登録願います。 ★★★3Gアクセスの際における案内メッセージ表示★★★ 容量無制限のソフトバンク〝パケットし放題プラン〝にご加入の方以外は再生時間の長い動画の場合、 データの容量が大きい為、3G無料データ利用量をオーバーすることがございます。 この為、ご利用中に案内メッセージが表示されますが、パンドラTVご利用においての別途料金は一切請求されません。 又、この利用量オーバーの案内メッセージは、パケットし放題プランに加入中の会員様には、 一切該当しないのでご安心ください。 パンドラのアプリケーションは、Android OS 2.2 バージョン基準でご提供されます。 詳しくはパンドラTVホームページ(http //www.pandora.tv)をご参照ください。 いつもパンドラTVをご利用いただき、誠にありがとうございます。 今後も、より快適なサービスのために努めてまいります。 欲しい方は下記のQRコードで読んでね(無料) 出会い系で被害を受けた方はコチラ このサイトは最新のブログ記事を自動で収集するので、このページで他のブログで方法を探してください。 #blogsearch feedreader プラグインエラー 正常に取得できませんでした。 #bf おすすめアプリ比較 オクトバ セール情報 「ADV 最悪なる災厄人間に捧ぐ」が大幅割引中!&「戦乱のサムライキングダム」が8周年記念開催中! オクトバ、セール・お買い得情報です。 今日は「ADV 最悪なる災厄人間に捧ぐ」「ソードナイツ」「戦乱のサムライキングダム」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? 【お願い】 デベロ [ #8230;] The post セール情報 「ADV 最悪なる災厄人間に捧ぐ」が大幅割引中!&「戦乱のサムライキングダム」が8周年記念開催中! appeared first on おすすめアプリ比較 オクトバ . セール情報 「Rush Rally Origins」が約半額!&「にゃんこ大戦争」でQ周年記念ガチャ「極選抜祭」開催! オクトバ、セール・お買い得情報です。 今日は「Rush Rally Origins」「ソードナイツ」「にゃんこ大戦争」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? 【お願い】 デベロッパ [ #8230;] The post セール情報 「Rush Rally Origins」が約半額!&「にゃんこ大戦争」でQ周年記念ガチャ「極選抜祭」開催! appeared first on おすすめアプリ比較 オクトバ . 先週のニュースまとめ 「Xperia PRO-I」が12月発売!ホームアプリ「SNS launcher」登場!【2021年10月23日 ~ 2021年10月29日】 ソニーが「Xperia PRO-I」を12月15日に発売します。また、XperiaでVR体験できるゴーグル「Xperia View」が11月19日に発売となっています。ソフトバンクからは法人向けの5Gスマートフォン「DI [ #8230;] The post 先週のニュースまとめ 「Xperia PRO-I」が12月発売!ホームアプリ「SNS launcher」登場!【2021年10月23日 ~ 2021年10月29日】 appeared first on おすすめアプリ比較 オクトバ . セール情報 謎解きアドベンチャー「The Lost Treasure」がセール中!&「ぷよぷよ!!クエスト」で「テクニカルクエスト アルガーの挑戦状」開催! オクトバ、セール・お買い得情報です。 今日は「The Lost Treasure」「モニュメントバレー」「ぷよぷよ!!クエスト」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? 【お願い】 [ #8230;] The post セール情報 謎解きアドベンチャー「The Lost Treasure」がセール中!&「ぷよぷよ!!クエスト」で「テクニカルクエスト アルガーの挑戦状」開催! appeared first on おすすめアプリ比較 オクトバ . 先週のニュースまとめ 5Gタブレット「Lenovo TAB6」登場。「HUAWEI MatePad 11」に新色!【2021年10月16日 ~ 2021年10月22日】 ソフトバンクからレノボ・ジャパンの5Gタブレット「Lenovo TAB6」が発売となっています。また、ファーウェイのタブレット「HUAWEI MatePad 11」に新色の「マットグレー」が登場し、カラーバリエーションが [ #8230;] The post 先週のニュースまとめ 5Gタブレット「Lenovo TAB6」登場。「HUAWEI MatePad 11」に新色!【2021年10月16日 ~ 2021年10月22日】 appeared first on おすすめアプリ比較 オクトバ . セール情報 お弁当パズルゲーム「隠弁当 -inbento-」が約半額!&「クッキングママ お料理しましょ!」でクリスマスイベントが12月1日より開催! オクトバ、セール・お買い得情報です。 今日は「隠弁当 -inbento-」「7Days」「クッキングママ お料理しましょ!」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? 【お願い】 デベ [ #8230;] The post セール情報 お弁当パズルゲーム「隠弁当 -inbento-」が約半額!&「クッキングママ お料理しましょ!」でクリスマスイベントが12月1日より開催! appeared first on おすすめアプリ比較 オクトバ . セール情報 「Kingdom Rush オリジンズ」がセール中!&カプコンの「スヌーピー」アプリ3タイトル合同キャンペーン開催! オクトバ、セール・お買い得情報です。 今日は「Kingdom Rush オリジンズ」「キングダムラッシュの復讐」「スヌーピードロップス」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? 【 [ #8230;] The post セール情報 「Kingdom Rush オリジンズ」がセール中!&カプコンの「スヌーピー」アプリ3タイトル合同キャンペーン開催! appeared first on おすすめアプリ比較 オクトバ . セール情報 ノベルゲーム「アンダーワールドオフィス」がセール中!&「妖怪三国志 国盗りウォーズ」で400万DL記念ステップアップガシャ! オクトバ、セール・お買い得情報です。 今日は「アンダーワールドオフィス」「She Sees Red」「妖怪三国志 国盗りウォーズ」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? 【お願い】 [ #8230;] The post セール情報 ノベルゲーム「アンダーワールドオフィス」がセール中!&「妖怪三国志 国盗りウォーズ」で400万DL記念ステップアップガシャ! appeared first on おすすめアプリ比較 オクトバ . セール情報 「すべてのビデオオーディオコンバータPRO」が110円!&新作パズルアプリ「バブルンのパズルブラスト!」リリース! オクトバ、セール・お買い得情報です。 今日は「すべてのビデオオーディオコンバータPRO」「ReFactory」「バブルンのパズルブラスト!」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つかるかも!? [ #8230;] The post セール情報 「すべてのビデオオーディオコンバータPRO」が110円!&新作パズルアプリ「バブルンのパズルブラスト!」リリース! appeared first on おすすめアプリ比較 オクトバ . セール情報 「Epic Heroes」が無料!&「SHOW BY ROCK!! Fes A Live」でリリース609日記念キャンペーン! オクトバ、セール・お買い得情報です。 今日は「Epic Heroes」「Dungon Shooer」「SHOW BY ROCK!! Fes A Live」のセール・キャンペーン情報をお伝えします。 意外な掘り出し物が見つ [ #8230;] The post セール情報 「Epic Heroes」が無料!&「SHOW BY ROCK!! Fes A Live」でリリース609日記念キャンペーン! appeared first on おすすめアプリ比較 オクトバ . 引用元 : http //octoba.net/feed 新着記事は見つかりませんでした。 #bf 緊急時や屋外で!扇風機までも動かすハイパワー本格バッテリー! 充電 充電池 充電式 バッテリ... 価格:16,800円(税込、送料込) android(アンドロイド)のトレンドやニュースの最新裏情報 定番 – andronavi スマホ写真をより綺麗に見せる必須アイテム #160; スマホで撮影するときに、遠くの被写体や逆に近くの物体を、「もっと良く撮れたらいいのになぁ」と思ったことはありませんか? #160; 今回は、持ち運びが便利で、しかも手間なく設置できるスマホカメラのアイテム [ #8230;] 『ポイント貯まる旅行比較 Gポイントトラベル』~最安プランがすぐ見つかる!ポイントがたくさん貯まる!~ 『ポイント貯まる旅行比較 Gポイントトラベル』は、各種旅行サービスのホテル情報を一括で検索できるうえ、旅行会社のポイントの他、Gポイントも貯められるお得なサービスです。 #160; 比較できる旅行サービスは、楽天、じゃ [ #8230;] 【もう君を離さない】迷子の子猫ちゃんから部屋の鍵まで一発探知 【Stick N FIND】は、鍵やお財布、子どもやペットにつけておくと、レーダーを頼りに探すことができるチップです。 #160; また、指定した範囲から離れると警告音を鳴らしてくれるので、迷子になりやすいお子さんや忘 [ #8230;] 2013年冬!人気スマホグッズランキング さぁ、2013年もあとわずか。今年もたくさんのスマートフォン機種が登場しましたね。 #160; スマホグッズも保護フィルムやカバーケース、ケーブルやモバイルバッテリーと続々と発売されました。 #160; UNiCAS [ #8230;] 異彩を放つ鮮烈の赤!車内で2台同時に充電できるケーブル #160; 目を引くような真っ赤な色が魅力の【Band Car Charger #8211; 2.1A output with Micro-USB】。 #160; ドライブのお供に、そして車内をオシャレに装飾したい [ #8230;] 「Xperia Z1」を購入したら、最初に使いたいおすすめグッズ #160; 今冬の最注目モデルのひとつ「Xperia Z1」。高いスペックはもちろんですが、なんといってもその美しいデザインが魅力的な端末です! #160; そんな「Xperia Z1」のデザインに惹かれて購入した! [ #8230;] ケーブルレス!コンパクト!お手頃価格!3拍子揃ったモバイルバッテリー #160; スマートフォンにしてから、悩むのがモバイルバッテリー選び。希望は色々あるけれど、手頃な価格でデザインもダサくなくて…ちゃんと利用できるものをお探しなら、【モバイルバッテリー iWALK M2500】がおすす [ #8230;] 『キュレーションマガジン Antenna[アンテナ]』~ローラのCMでお馴染み!片手で簡単に情報収集&使いやすさと表現力がアップデート~ ローラのCMでお馴染みの『キュレーションマガジン Antenna[アンテナ]』が大幅リニューアルされました。 #160; キュレーションとは、世の中にある情報やニュースを集めて、 自分好みに編集して楽しむことができるこ [ #8230;] 『ニュースが快適に読める SmartNews/スマートニュース』~時間がかかる読み込みのイライラを解消!快適なニュースアプリ~ 待ってました!iPhoneで話題を集めたニュースアプリが、いよいよAndroidにやってきました。 #160; 『ニュースが快適に読める SmartNews/スマートニュース』は、厳選したニュースを1日3回配信してくれ [ #8230;] 『3分で雑談力をつける まとめ読みアプリ【グノシー】』~あなた好みのニュースを毎日配信!情報収集がグッと楽になる~ 情報があふれすぎて、自分にとって有益なものがわからない、収集するのに疲れたとお嘆きのあなた!いいのがありますよ。『3分で雑談力をつける まとめ読みアプリ【グノシー】』です。 #160; 『Twitter』や『Faceb [ #8230;] 引用元 : http //andronavi.com/tag/standard/feed feedreader プラグインエラー RSSを入力してください。 andronavi 【2022年】年賀状はスマホやメールで簡単作成♪ 動画を添えて送れる「つむぐ年賀」とは ちょっと早いですが、2021年もお疲れ様でした! 今年も緊急事態宣言が続き、なかなか人と会えなかったなぁ~という方多いのではないでしょうか? 「今年は年賀状出してみようかな?」と考える人も多いかと思います。手書きの年賀状 [ #8230;] あなたも気楽にYouTuber?無料で動画編集ができるソフト・アプリ3選 YouTubeをはじめ、TikTokやインスタのショートなど動画制作の機会が増えています。そこで困るのが編集や制作!初心者でも簡単に利用できる動画制作や編集できるソフト・アプリがあったら助かりまよね? 今回は、初心者にも [ #8230;] 年末年始やクリスマスの配達にも!北欧発のフードデリバリー「Wolt」とは? Uber Eatsや出前館などといったフードデリバリーサービスが、コロナ禍の追い風を受けて激戦を繰り広げています。そんななか、最近目にすることが多くなってきた青いバッグが目印の「Wolt(ウォルト)」。一体どんなサービス [ #8230;] メガネで健康に!?カラダやココロを管理できる『JINS MEME(ジンズミーム)』とは 気づいたら猫背になっている。いつの間にかセルフブラック化している。 そんな状況に身に覚えがあるあなたに朗報です。いま、メガネで自己管理をする時代が来ています。 意識しているはずなのに意識できていないことって思っている以上 [ #8230;] まだ間に合う!2021年の大掃除、おすすめ家事代行3選 2021年は1年のほとんどが緊急事態宣言下にあり、おうち時間を堪能しすぎた……という方も多いはず。掃除も頑張ったというそこのあなた!年末の大掃除くらいは家事代行サービスにお願いしちゃいませんか? そこで、今回は年末の大掃 [ #8230;] ドコモのレンタルサービス「kikito」でPC周辺機器、ロボットなど高価製品が手軽に! 2021年4月よりドコモが提供を始め話題となった「kikito(キキト)」は「一定の期間だけ使いたい」「製品を購入する前にお試し利用してみたい」という人にピッタリのサービスです。 レンタルできる製品のなかには「ほしいけど [ #8230;] 2ヶ月で3000個以上の売り上げ!? 航空会社ピーチが手がける『旅くじ』とは? 10月13日から12月末まで渋谷パルコに「旅くじ」が設置されています。11月24日時点では設置している3域(大阪、渋谷、名古屋)で9000個以上も売れたようです。1回5000円もするのに引きたくなる「旅くじ」にはどんな魅 [ #8230;] Twitter Proへ設定!どんな機能とメリットがあるの? 11月上旬「国王」がTwitterトレンド入りしていて、何事!? と思っていたのですが、これは「Twitter Pro」という機能が追加されたことが影響されてのことだったようです。でも、プロといってもどんな機能があるので [ #8230;] 空いた時間で副業ができるサービス!おすすめ5選 主婦やフリーターだけでなくフルタイムで働く会社員の方まで副業を始める人が多くなりました。1日のうちの空いた数時間を使って、週末のお休みを使ってなどなど空いた時間を活用して副業ができるようになっています。自分のスキルを活か [ #8230;] 無料のおすすめ資格・検定3選【スキルアップ】お金をかけずに取得できる! オンライン化が進み、会場へ行かずとも試験が受けられる機会が増えてきました。なかには無料で取得できる資格もあり、なにか手に職をつけたい方や強みが欲しい方にとっておきのものもあるんです! そこで、今回は費用0円で取得できる資 [ #8230;] 引用元 : http //andronavi.com/feed 今日の人気のあるページ カメラのシャッター音を消す(無音) (3) MP3 Music Download(着うたフルや着信音が無料でダウンロード(DL)できるアプリ)で着メロを無料ダウンロード保存 (3) FC2動画アプリ(FC2動画専用アプリ-アダルト表示禁止設定も可能。エロ動画も親が閲覧制限設定できるので、子供にも安心) (2) QRコードやバーコードをカメラで読み込み(QRコードスキャナー。雑誌のアプリインストールの定番ソフト) (1) flvプレイヤー(flv player 携帯電話で動画再生) (1) 昨日の人気のあるページ 着信音メーカー(Ringdroid)は簡単に着うたや着信メロディで着信音を作ってしまえるアプリ (4) 着信通知サービス-音声で知らせるサービス (3) QRコードやバーコードをカメラで読み込み(QRコードスキャナー。雑誌のアプリインストールの定番ソフト) (3) MP3 Music Download(着うたフルや着信音が無料でダウンロード(DL)できるアプリ)で着メロを無料ダウンロード保存 (2) iタウンページ-お店・会社情報検索サイトの決定版 (2) 当サイトでの人気ランキング MP3 Music Download(着うたフルや着信音が無料でダウンロード(DL)できるアプリ)で着メロを無料ダウンロード保存 (233357) FC2動画アプリ(FC2動画専用アプリ-アダルト表示禁止設定も可能。エロ動画も親が閲覧制限設定できるので、子供にも安心) (233158) YouTube ダウンロード(TubeX Fast YouTube Downloader) (201658) カメラのシャッター音を消す(無音) (189896) 自動壁紙せっちゃん(撮影した写真やダウンロードした画像を待ち受け画面にする) (137720) トップページ (127251) アメーバピグ(Ameba)公式アプリ (108499) QRコードやバーコードをカメラで読み込み(QRコードスキャナー。雑誌のアプリインストールの定番ソフト) (97214) Google Map(モバイルグーグルマップ) (93201) ニコニコPlayer(仮)【非公式】(Flash非対応のAndroid端末でも視聴できるニコニコ動画再生用アプリ。) (81869) アンドロイド(Android)マーケットでアプリがダウンロード出来ない時の修理方法 (79192) 乗換案内-乗換検索サービスや運行遅延情報、時刻表閲覧 (77807) セキュリティソフト(Android端末の安全を守るアンチウィルスフリー) (71734) 美人時計-時計アプリ (69798) ワンピース 壁紙-ONE PIECE (69348) クーポンマップ-ぐるなびとHot Pepperのクーポンデータを横断検索 (64431) 配達追跡-クロネコヤマト、佐川急便、ゆうパックなど配達会社の配達状況を確認できます。 (62478) Google Earth(手のひら上で地球を探索 ) (62441) 折り込みチラシビューワー-新聞の折り込みチラシ検索&表示アプリ (58455) デイリーモーション(Dailymotion)の動画を検索。その他eBayやYouTube検索などもできる (55103) はかるだけダイエットLITE-自分の体重を毎日記録してダイエット! (54898) ウイルスセキュリティソフト(スパイウェアにも対応) (52956) 着うたフルや着メロ、着信音を音楽ダウンロード(MP3-DL) (52095) iタウンページ-お店・会社情報検索サイトの決定版 (49591) ミクシィ公式アプリ「mixi」 (47275) パンドラTV(PandoraTV)モバイル (47003) マクドナルド公式アプリ-スマートフォンでクーポン(割引券)や店舗検索 (42932) music.jp着信音plus(着メロ) (41597) 運行情報チェック(電車の遅延・運行情報を確認するアプリ) (40388) グラビアアイドル安田美沙子(やすだみさこ)の動壁-安田美沙子01(はんなり)』ライブ壁紙アプリ。(アダルトとかエロではありません) (39008) AKB48公式ファンアプリ (33329) 就職活動に役立つ-かんたん学歴年度早見表 (32369) MP3-Free Music Download 着うたフルや着信音、着メロを無料でダウンロード保存(DL)できる (32352) ディズニーランドや大型スーパーの駐車場で自分の車をどこに停めたかがわかる (31280) 音楽ダウンロードmp3音楽検索歌詞で着メロを無料ダウンロード保存 (30770) 天気予報「ウェザーニュース」公式アプリ (29967) ローソン公式アプリ『LAWSON』~店舗検索やお試しクーポンなど表示 (29265) 青空文庫ビューア(作品や作家、目的別で本を検索) (28060) ガソリン価格比較 近隣ガソリンスタンド検索 (24558) クックパッド(COOKPAD)公式アプリ。日本最大の料理サイト (24038) 着信音メーカー(Ringdroid)は簡単に着うたや着信メロディで着信音を作ってしまえるアプリ (24016) ウィキペディア(wikipedia)のスマートフォンバージョン「ワペディア:モバイルウィキ」 (22669) 地震・気象情報 最新ニュース速報 (20354) 渋滞ナビゲーション-地図と文字で情報表示 (20160) 日本全国の詳細地図を無料で閲覧-マピオンマップ (18834) flvプレイヤー(flv player 携帯電話で動画再生) (16761) 処方薬&市販薬お薬検索-日々更新の薬データベース。 (15872) 着信通知サービス-音声で知らせるサービス (14174) 産経新聞の朝刊(経済情報紙 フジサンケイビジネスアイ)が紙面体裁そのまま読めます。 (9679) Amebaブログ(アメーバーブログ)投稿用アプリ (9661) 新聞速報リーダー=日経新聞、朝日新聞、読売新聞、毎日新聞、産経新聞の速報新聞記事を簡単に表示 (7660) 全国2万5000件のラーメン店を検索 (6709) 不動産情報全国検索(賃貸アパート・マンション、新築・分譲、一戸建て) (3756) メニュー (43) 右メニュー (39) プラグイン/動画(Youtube) (33) プラグイン/編集履歴 (32) プラグイン/コメント (29) イマナラ!時限クーポン - Googleマップ上から近くのクーポン発行店舗をカンタン検索 (24) プラグイン (18) プラグイン/関連ブログ (17) プラグイン/人気商品一覧 (15) プラグイン/ニュース (13) まとめサイト作成支援ツール (13) プラグイン/アーカイブ (10) 上へ 合計: - 今日: - 昨日: - トップページの合計: - #ref_list 編集
https://w.atwiki.jp/wikiroid/pages/59.html
作者 Better Android URL http //jp.androlib.com/c.aspx?i=AFA u=aHR0cDovL2JldHRlcmFuZHJvaWQud29yZHByZXNzLmNvbS8= Ver 5.1.1 言語 英語 Link アンドロイダー http //androider.jp/?p=1990 AndroLib http //jp.androlib.com/android.application.com-betterandroid-openhome2-AFA.aspx
https://w.atwiki.jp/android/pages/23.html
Eclipseプラグインを使ったAndroidアプリケーションの作成 Eclipseプラグインを使わないAndroidアプリケーションの作成 |######ここまで翻訳######| Implementing Activity Callbacks Opening a New ScreenOpening a Screen Some Intent examples Returning a Result from a Screen Lifetime of the new screen Listening for Button Clicks Configuring General Window Properties Storing and Retrieving StateStoring and Retrieving Larger or More Complex Persistent Data Playing Media Files Listening For and Broadcasting Global Messages, and Setting AlarmsSending the message Receiving the message Other system messages Listening for phone events Setting Alarms Displaying AlertsNormal Alerts AlertDialog Notifications Displaying a Progress Bar Adding Your Application to the Favorites List Adding Items to the Screen MenuAdding Submenus Adding yourself to menus on other applications The offering application Display a Web Page Binding to Data Capture Images from the Phone Camera Handling Expensive Operations in the UI Thread Selecting, Highlighting, or Styling Portions of Text List of Files for an Android Application Eclipseプラグインを使ったAndroidアプリケーションの作成 Android Eclipseプラグインを使用することは、新しいAndroidアプリケーションの作成を始める最も高速で最も簡単な方法です。 プラグインは自動的にあなたのアプリケーションのために正しいプロジェクト構造を生成し、リソースを自動的にコンパイルしてくれます。 Androidアプリケーションの動作原理を理解するために、Androidアプリケーション解体新書を読んでみるのもよいでしょう。 SDKの sample/ フォルダでApiDemosアプリケーションと他のサンプルアプリケーションを見てみることもお勧めします。 最終的にはHello AndroidとNotepadのコードチュートリアルを行うことがEclipseでのAndroid開発を始めるには素敵な方法です。 特にHello Androidチュートリアルを行うことは、Eclipseで新しいAndroidアプリケーションを作成するための優れた導入方法となるでしょう。 Eclipseプラグインを使わないAndroidアプリケーションの作成 |######ここまで翻訳######| This topic describes the manual steps in creating an Android application. Before reading this, you should read Overview of an Android Application to understand the basics of how an Android application works. You might also want to look at the sample applications that ship with Android under the samples/ directory. Here is a list of the basic steps in building an application. 1. Create your required resource files This includes the AndroidManifest.xml global description file, string files that your application needs, and layout files describing your user interface. A full list of optional and required files and syntax details for each is given in File List for an Android Application. 2. Design your user interface See Implementing a UI for details on elements of the Android screen. 3. Implement your Activity (this page) You will create one class/file for each screen in your application. Screens will inherit from an android.app class, typically android.app.Activity for basic screens, android.app.ListActivity for list screens, or android.app.Dialog for dialog boxes. You will implement the required callbacks that let you draw your screen, query data, and commit changes, and also perform any required tasks such as opening additional screens or reading data from the device. Common tasks, such as opening a new screen or reading data from the device, are described below. The list of files you ll need for your application are described in List of Files for an Android Application. 4. Build and install your package. The Android SDK has some nice tools for generating projects and debugging code. Implementing Activity Callbacks Android calls a number of callbacks to let you draw your screen, store data before pausing, and refresh data after closing. You must implement at least some of these methods. See Lifetime of a Screen to learn when and in what order these methods are called. Here are some of the standard types of screen classes that Android provides android.app.Activity - This is a standard screen, with no specialization. android.app.ListActivity - This is a screen that is used to display a list of something. It hosts a ListView object, and exposes methods to let you identify the selected item, receive callbacks when the selected item changes, and perform other list-related actions. android.app.Dialog - This is a small, popup dialog-style window that isn t intended to remain in the history stack. (It is not resizeable or moveable by the user.) Opening a New Screen Your Activity will often need to open another Activity screen as it progresses. This new screen can be part of the same application or part of another application, the new screen can be floating or full screen, it can return a result, and you can decide whether to close this screen and remove it from the history stack when you are done with it, or to keep the screen open in history. These next sections describe all these options. Floating or full? When you open a new screen you can decide whether to make it transparent or floating, or full-screen. The choice of new screen affects the event sequence of events in the old screen (if the new screen obscures the old screen, a different series of events is called in the old screen). See Lifetime of an Activity for details. Transparent or floating windows are implemented in three standard ways Create an app.Dialog class Create an app.AlertDialog class Set the Theme_Dialog theme attribute to @android style/Theme.Dialog in your AndroidManifest.xml file. For example activity class="AddRssItem" android label="Add an item" android theme="@android style/Theme.Dialog"/ Calling startActivity() or startSubActivity() will open a new screen in whatever way it defines itself (if it uses a floating theme it will be floating, otherwise it will be full screen). Opening a Screen When you want to open a new screen, you can either explicitly specify the activity class to open, or you can let the operating system decide which screen to open, based upon the data and various parameters you pass in. A screen is opened by calling startActivity and passing in an Intent object, which specifies the criteria for the handling screen. To specify a specific screen, call Intent.setClass or setClassName with the exact activity class to open. Otherwise, set a variety of values and data, and let Android decide which screen is appropriate to open. Android will find one or zero Activities that match the specified requirements; it will never open multiple activities for a single request. More information on Intents and how Android resolves them to a specific class is given in the Intent topic. Some Intent examples The following snippet loads the com.google.android.samples.Animation1 class, and passes it some arbitrary data. Intent myIntent = new Intent(); myIntent.component = "com.google.android.samples.Animation1"; myIntent.putExtra("com.google.android.samples.SpecialValue", "Hello, Joe!"); // key/value pair, where key needs current package prefix. startActivity(myIntent); The next snippet requests that a Web page be opened by specifying the VIEW action, and a URI data string starting with "http //" schema Intent myIntent = new Intent("android.intent.action.VIEW", "http //www.google.com"); myIntent.putExtra("com.google.android.samples.SpecialValue", "Hello, Joe!"); // key/value pair, where key needs current package prefix. Here is the intent filter from the AndroidManifest.xml file for com.google.android.browser intent-filter action value="android.intent.action.VIEW" / category value="android.intent.category.DEFAULT" / scheme value="http" / scheme value="https" / scheme value="file" / /intent-filter Android defines a number of standard values, for instance the action constants defined by Intent. You can define custom values, but both the caller and handler must use them. See the intent-filter tag description in AndroidManifest.xml File Details for more information on the manifest syntax for the handling application. Returning a Result from a Screen A window can return a result after it closes. This result will be passed back into the calling Activity s onActivityResult() method, which can supply an integer result code, a string of data, and a Bundle of arbitrary data, along with the request code passed to startSubActivity(). Note that you must call the startSubActivity() method that accepts a request code parameter to get this callback. The following code demonstrates opening a new screen and retrieving a result. // Open the new screen. public void onClick(View v){ // Start the activity whose result we want to retrieve. The // result will come back with request code GET_CODE. Intent intent = new Intent(this, com.example.app.ChooseYourBoxer.class); startSubActivity(intent, CHOOSE_FIGHTER); } // Listen for results. protected void onActivityResult(int requestCode, int resultCode, String data, Bundle extras){ // See which child activity is calling us back. switch (resultCode) { case CHOOSE_FIGHTER // This is the standard resultCode that is sent back if the // activity crashed or didn t doesn t supply an explicit result. if (resultCode == RESULT_CANCELED){ myMessageboxFunction("Fight cancelled"); } else { myFightFunction(data, extras); } default break; } } // Class SentResult // Temporary screen to let the user choose something. private OnClickListener mLincolnListener = new OnClickListener(){ public void onClick(View v) { Bundle stats = new Bundle(); stats.putString("height","6\ 4\""); stats.putString("weight", "190 lbs"); stats.putString("reach", "74\""); setResult(RESULT_OK, "Lincoln", stats); finish(); } }; private OnClickListener mWashingtonListener = new OnClickListener() { public void onClick(View v){ Bundle stats = new Bundle(); stats.putString("height","6\ 2\""); stats.putString("weight", "190 lbs"); stats.putString("reach", "73\""); setResult(RESULT_OK, "Washington", Bundle); finish(); } }; Lifetime of the new screen An activity can remove itself from the history stack by calling Activity.finish() on itself, or the activity that opened the screen can call Activity.finishSubActivity() on any screens that it opens to close them. Listening for Button Clicks Button click and other UI event capturing are covered in Listening for UI Notifications on the UI Design page. Configuring General Window Properties You can set a number of general window properties, such as whether to display a title, whether the window is floating, and whether it displays an icon, by calling methods on the Window member of the underlying View object for the window. Examples include calling getWindow().requestFeature() (or the convenience method requestWindowFeature(some_feature)) to hide the title. Here is an example of hiding the title bar //Hide the title bar requestWindowFeature(Window.FEATURE_NO_TITLE); Storing and Retrieving State If your application is dumped from memory because of space concerns, it will lose all user interface state information such as checkbox state and text box values as well as class member values. Android calls Activity.onFreeze before it pauses the application. This method hands in a Bundle that can be used to store name/value pairs that will persist and be handed back to the application even if it is dropped from memory. Android will pass this Bundle back to you when it calls onCreate(). This Bundle only exists while the application is still in the history stack (whether or not it has been removed from memory) and will be lost when the application is finalized. See the topics for onFreeze(Bundle) and onCreate(Bundle) for examples of storing and retrieving state. Read more about the life cycle of an application in Lifetime of an Activity. Storing and Retrieving Larger or More Complex Persistent Data Your application can store files or complex collection objects, and reserve them for private use by itself or other activities in the application, or it can expose its data to all other applications on the device. See Storing, Retrieving, and Exposing Data to learn how to store and retrieve private data, how to store and retrieve common data from the device, and how to expose your private data to other applications. Playing Media Files Please see the document Android Media APIs for more details. Listening For and Broadcasting Global Messages, and Setting Alarms You can create a listening class that can be notified or even instantiated whenever a specific type of system message is sent. The listening classes, called intent receivers, extend IntentReceiver. If you want Android to instantiate the object whenever an appropriate intent notification is sent, define the receiver with a receiver element in the AndroidManifext.xml file. If the caller is expected to instantiate the object in preparation to receive a message, this is not required. The receiver will get a call to their IntentReceiver.onReceiveIntent() method. A receiver can define an intent-filter tag that describes the types of messages it will receive. Just as Android s IntentResolver will look for appropriate Activity matches for a startActivity() call, it will look for any matching Receivers (but it will send the message to all matching receiver, not the "best" match). To send a notification, the caller creates an Intent object and calls Activity.broadcastIntent() with that Intent. Multiple recipients can receive the same message. You can broadcast an Intent message to an intent receiver in any application, not only your own. If the receiving class is not registered using receiver in its manifest, you can dynamically instantiate and register a receiver by calling Context.registerReceiver(). Receivers can include intent filters to specify what kinds of intents they are listening for. Alternatively, if you expect a single known caller to contact a single known receiver, the receiver does not specify an intent filter, and the caller specifies the receiver s class name in the Intent by calling Intent.setClassName() with the recipient s class name. The recipient receives a Context object that refers to its own package, not to the package of the sender. Note If a receiver or broadcaster enforces permissions, your application might need to request permission to send or receive messages from that object. You can request permission by using the uses-permission tag in the manifest. Here is a code snippet of a sender and receiver. This example does not demonstrate registering receivers dynamically. For a full code example, see the AlarmService class in the ApiDemos project. Sending the message // We are sending this to a specific recipient, so we will // only specify the recipient class name. Intent intent = new Intent(this, AlarmReceiver.class); intent.putExtra("message","Wake up."); broadcastIntent(intent); Receiving the message Receiver AndroidManifest.xml (because there is no intent filter child, this class will only receive a broadcast when the receiver class is specified by name, as is done in this example) receiver class=".AlarmReceiver" / Receiver Java code public class AlarmReceiver extends IntentReceiver{ // Display an alert that we ve received a message. @Override public void onReceiveIntent(Context context, Intent intent){ // Send a text notification to the screen. NotificationManager nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); nm.notifyWithText(R.id.alarm, "Alarm!!!", NotificationManager.LENGTH_SHORT, null); } } Other system messages You can listen for other system messages sent by Android as well, such as USB connection/removal messages, SMS arrival messages, and timezone changes. See Intent for a list of broadcast messages to listen for. Messages are marked "Broadcast Action" in the documentation. Listening for phone events The telephony package overview page describes how to register to listen for phone events. Setting Alarms Android provides an AlarmManager service that will let you specify an Intent to send at a designated time. This intent is typically used to start an application at a preset time. (Note If you want to send a notification to a sleeping or running application, use Handler instead.) Displaying Alerts There are two major kinds of alerts that you may display to the user (1) Normal alerts are displayed in response to a user action, such as trying to perform an action that is not allowed. (2) Out-of-band alerts, called notifications, are displayed as a result of something happening in the background, such as the user receiving new e-mail. Normal Alerts Android provides a number of ways for you to show popup notifications to your user as they interact with your application. Class Description app.AlertDialogorContext.showAlert() A popup alert dialog with two buttons (typically OK and Cancel) that take callback handlers. It can be created separately, or launched using the Application helper method Context.showAlert(). See the section after this table for more details. ProgressDialog A dialog box used to indicate progress of an operation with a known progress value or an indeterminate length (setProgress(bool)). See Views Progress Bar in ApiDemos for examples. Activity By setting the theme of an activity to android theme="android style/Theme.Dialog", your activity will take on the appearance of a normal dialog, floating on top of whatever was underneath it. You usually set the theme through the android theme attribute in your AndroidManifest.xml. The advantage of this over Dialog and AlertDialog is that Application has a much better managed lifecycle than dialogs if a dialog goes to the background and is killed, you cannot recapture state, whereas Application exposes a Bundle of saved values in onCreate() to help you maintain state. AlertDialog This is a basic warning dialog box that lets you configure a message, button text, and callback. You can create one by calling the Application helper method Context.showAlert(), as shown here. private Handler mHandler = new Handler() { public void handleMessage(Message msg) { switch (msg.what) { case ACCEPT_CALL answer(msg.obj); break; case BOUNCE_TO_VOICEMAIL voicemail(msg.obj); break; } } }; private void IncomingMotherInlawCall(Connection c) { String Text; // "Answer" callback. Message acceptMsg = Message.obtain(); acceptMsg.target = mHandler; acceptMsg.what = ACCEPT_CALL; acceptMsg.obj = c.getCall(); // "Cancel" callback. Message rejectMsg = Message.obtain(); rejectMsg.target = mHandler; rejectMsg.what = BOUNCE_TO_VOICEMAIL; rejectMsg.obj = c.getCall(); showAlert(null, "Phyllis is calling", "Answer", acceptMsg, true, rejectMsg); } Notifications Out-of-band alerts should always be displayed using the NotificationManager, which allows you to tell the user about something they may be interested in without disrupting what they are currently doing. A notification can be anything from a brief pop-up box informing the user of the new information, through displaying a persistent icon in the status bar, to vibrating, playing sounds, or flashing lights to get the user s attention. In all cases, the user must explicitly shift their focus to the notification before they can interact with it. The following code demonstrates using NotificationManager to display a basic text popup when a new SMS message arrives in a listening service, and provides the current message count. You can see several more examples in the ApiDemos application, under app/ (named notification*.java). static void setNewMessageIndicator(Context context, int messageCount){ // Get the static global NotificationManager object. NotificationManager nm = NotificationManager.getDefault(); // If we re being called because a new message has been received, // then display an icon and a count. Otherwise, delete the persistent // message. if (messageCount 0) { nm.notifyWithText(myApp.NOTIFICATION_GUID, // ID for this notification. messageCount + " new message" + messageCount 1 ? "s" "", // Text to display. NotificationManager.LENGTH_SHORT); // Show it for a short time only. } } To display a notification in the status bar and have it launch an intent when the user selects it (such as the new text message notification does), call NotificationManager.notify(), and pass in vibration patterns, status bar icons, or Intents to associate with the notification. Displaying a Progress Bar An activity can display a progress bar to notify the user that something is happening. To display a progress bar in a screen, call Activity.requestWindowFeature(Window.FEATURE_PROGRESS). To set the value of the progress bar, call Activity.getWindow().setFeatureInt(Window.FEATURE_PROGRESS, level). Progress bar values are from 0 to 9,999, or set the value to 10,000 to make the progress bar invisible. You can also use the ProgressDialog class, which enables a dialog box with an embedded progress bar to send a "I m working on it" notification to the user. Adding Your Application to the Favorites List You can t. Only a user can add an application to the Favorites list. Adding Items to the Screen Menu Every Android screen has a default menu with default options, such as adding the activity to the favorites menu. You can add your own menu entries to the default menu options by implementing Activity.onCreateOptionsMenu or Activity.onPrepareOptionsMenu(), and adding Item objects to the Menu passed in. To handle clicks implement Activity.onOptionsItemSelected() to handle the click in your Activity class. You may also pass the Item object a handler class that implements the Runnable class (a handler) but this is less efficient and discouraged. An application receives a callback at startup time to enable it to populate its menu. Additionally, it receives callbacks each time the user displays the options menu to let you perform some contextual modifications on the menu. To populate the menu on startup, override Activity.onCreateOptionsMenu; to populate it when the menu is called (somewhat less efficient), you can override Activity.onPrepareOptionsMenu(). Each Activity has its own menu list. Menu items are displayed in the order added, though you can group them as described in the Menu.add documentation. The following code snippet adds three items to the default menu options and handles them through the overridden Activity.onOptionsItemSelected() method. You can show or hide menu items by calling setItemShown() or setGroupShown(). // Called only the first time the options menu is displayed. // Create the menu entries. // Menu adds items in the order shown. @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); // Parameters for menu.add are // group -- Not used here. // id -- Used only when you want to handle and identify the click yourself. // title menu.add(0, 0, "Zoom"); menu.add(0, 1, "Settings"); menu.add(0, 2, "Other"); return true; } // Activity callback that lets your handle the selection in the class. // Return true to indicate that you ve got it, false to indicate // that it should be handled by a declared handler object for that // item (handler objects are discouraged for reasons of efficiency). @Override public boolean onOptionsItemSelected(Menu.Item item){ switch (item.getId()) { case 0 showAlert("Menu Item Clicked", "Zoom", "ok", null, false, null); return true; case 1 showAlert("Menu Item Clicked", "Settings", "ok", null, false, null); return true; case 2 showAlert("Menu Item Clicked", "Other", "ok", null, false, null); return true; } return false; } You can add key shortcuts by calling the Item.setAlphabeticShortcut() or Item.setNumericShortcut() methods, as demonstrated here to add a "C" shortcut to a menu item thisItem.setAlphabeticShortcut(0, c ); Adding Submenus Add a submenu by calling Menu.addSubMenu(), which returns a SubMenu object. You can then add additional items to this menu. Menus can only be one level deep, and you can customize the appearance of the submenu menu item. @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); // Parameters for menu.add are // group -- Not used here. // id -- Used only when you want to handle and identify the click yourself. // title menu.add(0, 0, "Send message"); menu.add(0, 1, "Settings"); menu.add(0, 2, "Local handler"); menu.add(0, 3, "Launch contact picker"); // Add our submenu. SubMenu sub = menu.addSubMenu(1, 4, "Days of the week"); sub.add(0, 5, "Monday"); sub.add(0, 6, "Tuesday"); sub.add(0, 7, "Wednesday"); sub.add(0, 8, "Thursday"); sub.add(0, 9, "Friday"); sub.add(0, 10, "Saturday"); sub.add(0, 11, "Sunday"); return true; } Adding yourself to menus on other applications You can also advertise your Activity s services so that other Activities can add your activity to their own option menu. For example, suppose you implement a new image handling tool that shrinks an image to a smaller size and you would like to offer this as a menu option to any other Activity that handles pictures. To do this, you would exposes your capabilities inside an intent filter in your manifest. If another application that handles photos asks Android for any Activities that can perform actions on pictures, Android will perform intent resolution, find your Activity, and add it to the other Activity s options menu. The offering application The application offering the service must include an intent-filter element in the manifest, inside the activity tag of the offering Activity. The intent filter includes all the details describing what it can do, such as a type element that describes the MIME type of data that it can handle, a custom action value that describes what your handling application can do (this is so that when it receives the Intent on opening it knows what it is expected to do), and most important, include a category filter with the value android.intent.category.ALTERNATIVE and/or android.intent.category.SELECTED_ALTERNATIVE (SELECTED_ALTERNATIVE is used to handle only the currently selected element on the screen, rather than the whole Activity intent. Here s an example of a snip of a manifest that advertises picture shrinking technology for both selected items and the whole screen. activity class="PictureShrink" !-- Handling class -- intent-filter label="Shrink picture" !-- Menu label to display -- action value="com.example.sampleapp.SHRINK_IT" / type value="image/*" / !-- MIME type for generic images -- category value="android.intent.category.ALTERNATIVE " / category value="android.intent.category.SELECTED_ALTERNATIVE" / /intent-filter /activity The menu-displaying application An application that wants to display a menu that includes any additional external services must, first of all, handle its menu creation callback. As part of that callback it creates an intent with the category Intent.ALTERNATIVE_CATEGORY and/or Intent.SELECTED_ALTERNATIVE, the MIME type currently selected, and any other requirements, the same way as it would satisfy an intent filter to open a new Activity. It then calls menu.addIntentOptions() to have Android search for and add any services meeting those requirements. It can optionally add additional custom menu items of its own. You should implement SELECTED_ALTERNATIVE in onPrepareOptionsMenu() rather than onCreateOptionsMenu(), because the user s selection can change after the application is launched. Here s a code snippet demonstrating how a picture application would search for additional services to display on its menu. @Override public boolean onCreateOptionsMenu(Menu menu){ super.onCreateOptionsMenu(menu); // Create an Intent that describes the requirements to fulfill to be included // in our menu. The offering app must include a category value of Intent.ALTERNATIVE_CATEGORY. Intent intent = new Intent(null, getIntent().getData()); intent.addCategory(Intent.ALTERNATIVE_CATEGORY); // Search for, and populate the menu with, acceptable offering applications. menu.addIntentOptions( 0, // Group 0, // Any unique IDs we might care to add. MySampleClass.class.getName(), // Name of the class displaying the menu--here, its this class. null, // No specifics. intent, // Previously created intent that describes our requirements. 0, // No flags. null); // No specifics. return true; } Display a Web Page Use the webkit.WebView object. Binding to Data You can bind a ListView to a set of underlying data by using a shim class called ListAdapter (or a subclass). ListAdapter subclasses bind to a variety of data sources, and expose a common set of methods such as getItem() and getView(), and uses them to pick View items to display in its list. You can extend ListAdapter and override getView() to create your own custom list items. There are essentially only two steps you need to perform to bind to data 1. Create a ListAdapter object and specify its data source 2. Give the ListAdapter to your ListView object. That s it! Here s an example of binding a ListActivity screen to the results from a cursor query. (Note that the setListAdapter() method shown is a convenience method that gets the page s ListView object and calls setAdapter() on it.) // Run a query and get a Cursor pointing to the results. Cursor c = People.query(this.getContentResolver(), null); startManagingCursor(c); // Create the ListAdapter. A SimpleCursorAdapter lets you specify two interesting things // an XML template for your list item, and // The column to map to a specific item, by ID, in your template. ListAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, // Use a template that displays a text view c, // Give the cursor to the list adapter new String[] {People.NAME} , // Map the NAME column in the people database to... new String[] {"text1"}); // The "text1" view defined in the XML template setListAdapter(adapter); See view/List4 in the ApiDemos project for an example of extending ListAdapter for a new data type. Capture Images from the Phone Camera You can hook into the device s camera onto your own Canvas object by using the CameraDevice class. See that class s documentation, and the ApiDemos project s Camera Preview application (Graphics/Camera Preview) for example code. Handling Expensive Operations in the UI Thread Avoid performing long-running operations (such as network I/O) directly in the UI thread — the main thread of an application where the UI is run — or your application may be blocked and become unresponsive. Here is a brief summary of the recommended approach for handling expensive operations 1. Create a Handler object in your UI thread 2. Spawn off worker threads to perform any required expensive operations 3. Post results from a worker thread back to the UI thread s handler either through a Runnable or a Message 4. Update the views on the UI thread as needed The following outline illustrates a typical implementation public class MyActivity extends Activity { [ . . . ] // Need handler for callbacks to the UI thread final Handler mHandler = new Handler(); // Create runnable for posting final Runnable mUpdateResults = new Runnable() { @Override public void run() { updateResultsInUi(); } }; @Override protected void onCreate(Bundle icicle) { super.onCreate(icicle); [ . . . ] } protected void startLongRunningOperation() { // Fire off a thread to do some work that we shouldn t do directly in the UI thread Thread t = new Thread() { public void run() { mResults = doSomethingExpensive(); mHandler.post(mUpdateResults); } }; t.start(); } private void updateResultsInUi() { // Back in the UI thread -- update our UI elements based on the data in mResults [ . . . ] } } For further discussions on this topic, see Developing Responsive Applications and the Handler documentation. Selecting, Highlighting, or Styling Portions of Text You can highlight or style the formatting of strings or substrings of text in a TextView object. There are two ways to do this If you use a string resource, you can add some simple styling, such as bold or italic using HTML notation. So, for example, in res/values/strings.xml you could declare this resource string id="@+id/styled_welcome_message" We are b i so /i /b glad to see you. /string /resources To style text on the fly, or to add highlighting or more complex styling, you must use the Spannable object as described next. To style text on the fly, you must make sure the TextView is using Spannable storage for the text (this will always be true if the TextView is an EditText), retrieve its text with getText(), and call setSpan(Object, int, int, int), passing in a new style class from the android.text.style package and the selection range. The following code snippet demonstrates creating a string with a highlighted section, italic section, and bold section, and adding it to an EditText object. // Get our EditText object. EditText vw = (EditText)findViewById(R.id.text); // Set the EditText s text. vw.setText("Italic, highlighted, bold."); // If this were just a TextView, we could do // vw.setText("Italic, highlighted, bold.", TextView.BufferType.SPANNABLE); // to force it to use Spannable storage so styles can be attached. // Or we could specify that in the XML. // Get the EditText s internal text storage Spannable str = vw.getText(); // Create our span sections, and assign a format to each. str.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); str.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); str.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 21, str.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); List of Files for an Android Application The following list describes the structure and files of an Android application. Many of these files can be built for you (or stubbed out) by the activityCreator.py application shipped in the tools/ menu of the SDK. See Building an Android Sample Application for more information on using activityCreator.py. MyApp/ AndroidManifest.xml (required) Advertises the screens that this application provides, where they can be launched (from the main program menu or elsewhere), any content providers it implements and what kind of data they handle, where the implementation classes are, and other application-wide information. Syntax details for this file are described in AndroidManifest.xml. src//myPackagePath/.../MyClass.java (required) This folder holds all the source code files for your application, inside the appropriate package subfolders. res/ (required) This folder holds all the resources for your application. Resources are external data files or description files that are compiled into your code at build time. Files in different folders are compiled differently, so you must put the proper resource into the proper folder. (See Resources for details.) anim/animation1.xml... (optional) Holds any animation XML description files that the application uses. The format of these files is described in Resources. drawable/some_picture.pngsome_stretchable.9.pngsome_background.xml... (optional) Zero or more files that will be compiled to android.graphics.drawable resources. Files can be image files (png, gif, or other) or XML files describing other graphics such as bitmaps, stretchable bitmaps, or gradients. Supported bitmap file formats are PNG (preferred), JPG, and GIF (discouraged), as well as the custom 9-patch stretchable bitmap format. These formats are described in Resources. layout/screen_1_layout.xml... (optional) Holds all the XML files describing screens or parts of screens. Although you could create a screen in Java, defining them in XML files is typically easier. A layout file is similar in concept to an HTML file that describes the screen layout and components. See Implementing a UI for more information about designing screens, and Layout Resources for the syntax of these files. values/arraysclasses.xmlcolors.xmldimens.xmlstrings.xmlstyles.xmlvalues.xml (optional) XML files describing additional resources such as strings, colors, and styles. The naming, quantity, and number of these files are not enforced--any XML file is compiled, but these are the standard names given to these files. However, the syntax of these files is prescribed by Android, and described in Resources. xml/ (optional) XML files that can be read at run time on the device. raw/ (optional) Any files to be copied directly to the device.
https://w.atwiki.jp/android/pages/151.html
Eclipseプラグインを使ったAndroidアプリケーションの作成 Eclipseプラグインを使わないAndroidアプリケーションの作成 |######ここまで翻訳######| Implementing Activity Callbacks Opening a New ScreenOpening a Screen Some Intent examples Returning a Result from a Screen Lifetime of the new screen Listening for Button Clicks Configuring General Window Properties Storing and Retrieving StateStoring and Retrieving Larger or More Complex Persistent Data Playing Media Files Listening For and Broadcasting Global Messages, and Setting AlarmsSending the message Receiving the message Other system messages Listening for phone events Setting Alarms Displaying AlertsNormal Alerts AlertDialog Notifications Displaying a Progress Bar Adding Your Application to the Favorites List Adding Items to the Screen MenuAdding Submenus Adding yourself to menus on other applications The offering application Display a Web Page Binding to Data Capture Images from the Phone Camera Handling Expensive Operations in the UI Thread Selecting, Highlighting, or Styling Portions of Text List of Files for an Android Application Eclipseプラグインを使ったAndroidアプリケーションの作成 Android Eclipseプラグインを使用することは、新しいAndroidアプリケーションの作成を始める最も高速で最も簡単な方法です。 プラグインは自動的にあなたのアプリケーションのために正しいプロジェクト構造を生成し、リソースを自動的にコンパイルしてくれます。 Androidアプリケーションの動作原理を理解するために、Androidアプリケーション解体新書を読んでみるのもよいでしょう。 SDKの sample/ フォルダでApiDemosアプリケーションと他のサンプルアプリケーションを見てみることもお勧めします。 最終的にはHello AndroidとNotepadのコードチュートリアルを行うことがEclipseでのAndroid開発を始めるには素敵な方法です。 特にHello Androidチュートリアルを行うことは、Eclipseで新しいAndroidアプリケーションを作成するための優れた導入方法となるでしょう。 Eclipseプラグインを使わないAndroidアプリケーションの作成 |######ここまで翻訳######| This topic describes the manual steps in creating an Android application. Before reading this, you should read Overview of an Android Application to understand the basics of how an Android application works. You might also want to look at the sample applications that ship with Android under the samples/ directory. Here is a list of the basic steps in building an application. 1. Create your required resource files This includes the AndroidManifest.xml global description file, string files that your application needs, and layout files describing your user interface. A full list of optional and required files and syntax details for each is given in File List for an Android Application. 2. Design your user interface See Implementing a UI for details on elements of the Android screen. 3. Implement your Activity (this page) You will create one class/file for each screen in your application. Screens will inherit from an android.app class, typically android.app.Activity for basic screens, android.app.ListActivity for list screens, or android.app.Dialog for dialog boxes. You will implement the required callbacks that let you draw your screen, query data, and commit changes, and also perform any required tasks such as opening additional screens or reading data from the device. Common tasks, such as opening a new screen or reading data from the device, are described below. The list of files you ll need for your application are described in List of Files for an Android Application. 4. Build and install your package. The Android SDK has some nice tools for generating projects and debugging code. Implementing Activity Callbacks Android calls a number of callbacks to let you draw your screen, store data before pausing, and refresh data after closing. You must implement at least some of these methods. See Lifetime of a Screen to learn when and in what order these methods are called. Here are some of the standard types of screen classes that Android provides android.app.Activity - This is a standard screen, with no specialization. android.app.ListActivity - This is a screen that is used to display a list of something. It hosts a ListView object, and exposes methods to let you identify the selected item, receive callbacks when the selected item changes, and perform other list-related actions. android.app.Dialog - This is a small, popup dialog-style window that isn t intended to remain in the history stack. (It is not resizeable or moveable by the user.) Opening a New Screen Your Activity will often need to open another Activity screen as it progresses. This new screen can be part of the same application or part of another application, the new screen can be floating or full screen, it can return a result, and you can decide whether to close this screen and remove it from the history stack when you are done with it, or to keep the screen open in history. These next sections describe all these options. Floating or full? When you open a new screen you can decide whether to make it transparent or floating, or full-screen. The choice of new screen affects the event sequence of events in the old screen (if the new screen obscures the old screen, a different series of events is called in the old screen). See Lifetime of an Activity for details. Transparent or floating windows are implemented in three standard ways Create an app.Dialog class Create an app.AlertDialog class Set the Theme_Dialog theme attribute to @android style/Theme.Dialog in your AndroidManifest.xml file. For example activity class="AddRssItem" android label="Add an item" android theme="@android style/Theme.Dialog"/ Calling startActivity() or startSubActivity() will open a new screen in whatever way it defines itself (if it uses a floating theme it will be floating, otherwise it will be full screen). Opening a Screen When you want to open a new screen, you can either explicitly specify the activity class to open, or you can let the operating system decide which screen to open, based upon the data and various parameters you pass in. A screen is opened by calling startActivity and passing in an Intent object, which specifies the criteria for the handling screen. To specify a specific screen, call Intent.setClass or setClassName with the exact activity class to open. Otherwise, set a variety of values and data, and let Android decide which screen is appropriate to open. Android will find one or zero Activities that match the specified requirements; it will never open multiple activities for a single request. More information on Intents and how Android resolves them to a specific class is given in the Intent topic. Some Intent examples The following snippet loads the com.google.android.samples.Animation1 class, and passes it some arbitrary data. Intent myIntent = new Intent(); myIntent.component = "com.google.android.samples.Animation1"; myIntent.putExtra("com.google.android.samples.SpecialValue", "Hello, Joe!"); // key/value pair, where key needs current package prefix. startActivity(myIntent); The next snippet requests that a Web page be opened by specifying the VIEW action, and a URI data string starting with "http //" schema Intent myIntent = new Intent("android.intent.action.VIEW", "http //www.google.com"); myIntent.putExtra("com.google.android.samples.SpecialValue", "Hello, Joe!"); // key/value pair, where key needs current package prefix. Here is the intent filter from the AndroidManifest.xml file for com.google.android.browser intent-filter action value="android.intent.action.VIEW" / category value="android.intent.category.DEFAULT" / scheme value="http" / scheme value="https" / scheme value="file" / /intent-filter Android defines a number of standard values, for instance the action constants defined by Intent. You can define custom values, but both the caller and handler must use them. See the intent-filter tag description in AndroidManifest.xml File Details for more information on the manifest syntax for the handling application. Returning a Result from a Screen A window can return a result after it closes. This result will be passed back into the calling Activity s onActivityResult() method, which can supply an integer result code, a string of data, and a Bundle of arbitrary data, along with the request code passed to startSubActivity(). Note that you must call the startSubActivity() method that accepts a request code parameter to get this callback. The following code demonstrates opening a new screen and retrieving a result. // Open the new screen. public void onClick(View v){ // Start the activity whose result we want to retrieve. The // result will come back with request code GET_CODE. Intent intent = new Intent(this, com.example.app.ChooseYourBoxer.class); startSubActivity(intent, CHOOSE_FIGHTER); } // Listen for results. protected void onActivityResult(int requestCode, int resultCode, String data, Bundle extras){ // See which child activity is calling us back. switch (resultCode) { case CHOOSE_FIGHTER // This is the standard resultCode that is sent back if the // activity crashed or didn t doesn t supply an explicit result. if (resultCode == RESULT_CANCELED){ myMessageboxFunction("Fight cancelled"); } else { myFightFunction(data, extras); } default break; } } // Class SentResult // Temporary screen to let the user choose something. private OnClickListener mLincolnListener = new OnClickListener(){ public void onClick(View v) { Bundle stats = new Bundle(); stats.putString("height","6\ 4\""); stats.putString("weight", "190 lbs"); stats.putString("reach", "74\""); setResult(RESULT_OK, "Lincoln", stats); finish(); } }; private OnClickListener mWashingtonListener = new OnClickListener() { public void onClick(View v){ Bundle stats = new Bundle(); stats.putString("height","6\ 2\""); stats.putString("weight", "190 lbs"); stats.putString("reach", "73\""); setResult(RESULT_OK, "Washington", Bundle); finish(); } }; Lifetime of the new screen An activity can remove itself from the history stack by calling Activity.finish() on itself, or the activity that opened the screen can call Activity.finishSubActivity() on any screens that it opens to close them. Listening for Button Clicks Button click and other UI event capturing are covered in Listening for UI Notifications on the UI Design page. Configuring General Window Properties You can set a number of general window properties, such as whether to display a title, whether the window is floating, and whether it displays an icon, by calling methods on the Window member of the underlying View object for the window. Examples include calling getWindow().requestFeature() (or the convenience method requestWindowFeature(some_feature)) to hide the title. Here is an example of hiding the title bar //Hide the title bar requestWindowFeature(Window.FEATURE_NO_TITLE); Storing and Retrieving State If your application is dumped from memory because of space concerns, it will lose all user interface state information such as checkbox state and text box values as well as class member values. Android calls Activity.onFreeze before it pauses the application. This method hands in a Bundle that can be used to store name/value pairs that will persist and be handed back to the application even if it is dropped from memory. Android will pass this Bundle back to you when it calls onCreate(). This Bundle only exists while the application is still in the history stack (whether or not it has been removed from memory) and will be lost when the application is finalized. See the topics for onFreeze(Bundle) and onCreate(Bundle) for examples of storing and retrieving state. Read more about the life cycle of an application in Lifetime of an Activity. Storing and Retrieving Larger or More Complex Persistent Data Your application can store files or complex collection objects, and reserve them for private use by itself or other activities in the application, or it can expose its data to all other applications on the device. See Storing, Retrieving, and Exposing Data to learn how to store and retrieve private data, how to store and retrieve common data from the device, and how to expose your private data to other applications. Playing Media Files Please see the document Android Media APIs for more details. Listening For and Broadcasting Global Messages, and Setting Alarms You can create a listening class that can be notified or even instantiated whenever a specific type of system message is sent. The listening classes, called intent receivers, extend IntentReceiver. If you want Android to instantiate the object whenever an appropriate intent notification is sent, define the receiver with a receiver element in the AndroidManifext.xml file. If the caller is expected to instantiate the object in preparation to receive a message, this is not required. The receiver will get a call to their IntentReceiver.onReceiveIntent() method. A receiver can define an intent-filter tag that describes the types of messages it will receive. Just as Android s IntentResolver will look for appropriate Activity matches for a startActivity() call, it will look for any matching Receivers (but it will send the message to all matching receiver, not the "best" match). To send a notification, the caller creates an Intent object and calls Activity.broadcastIntent() with that Intent. Multiple recipients can receive the same message. You can broadcast an Intent message to an intent receiver in any application, not only your own. If the receiving class is not registered using receiver in its manifest, you can dynamically instantiate and register a receiver by calling Context.registerReceiver(). Receivers can include intent filters to specify what kinds of intents they are listening for. Alternatively, if you expect a single known caller to contact a single known receiver, the receiver does not specify an intent filter, and the caller specifies the receiver s class name in the Intent by calling Intent.setClassName() with the recipient s class name. The recipient receives a Context object that refers to its own package, not to the package of the sender. Note If a receiver or broadcaster enforces permissions, your application might need to request permission to send or receive messages from that object. You can request permission by using the uses-permission tag in the manifest. Here is a code snippet of a sender and receiver. This example does not demonstrate registering receivers dynamically. For a full code example, see the AlarmService class in the ApiDemos project. Sending the message // We are sending this to a specific recipient, so we will // only specify the recipient class name. Intent intent = new Intent(this, AlarmReceiver.class); intent.putExtra("message","Wake up."); broadcastIntent(intent); Receiving the message Receiver AndroidManifest.xml (because there is no intent filter child, this class will only receive a broadcast when the receiver class is specified by name, as is done in this example) receiver class=".AlarmReceiver" / Receiver Java code public class AlarmReceiver extends IntentReceiver{ // Display an alert that we ve received a message. @Override public void onReceiveIntent(Context context, Intent intent){ // Send a text notification to the screen. NotificationManager nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); nm.notifyWithText(R.id.alarm, "Alarm!!!", NotificationManager.LENGTH_SHORT, null); } } Other system messages You can listen for other system messages sent by Android as well, such as USB connection/removal messages, SMS arrival messages, and timezone changes. See Intent for a list of broadcast messages to listen for. Messages are marked "Broadcast Action" in the documentation. Listening for phone events The telephony package overview page describes how to register to listen for phone events. Setting Alarms Android provides an AlarmManager service that will let you specify an Intent to send at a designated time. This intent is typically used to start an application at a preset time. (Note If you want to send a notification to a sleeping or running application, use Handler instead.) Displaying Alerts There are two major kinds of alerts that you may display to the user (1) Normal alerts are displayed in response to a user action, such as trying to perform an action that is not allowed. (2) Out-of-band alerts, called notifications, are displayed as a result of something happening in the background, such as the user receiving new e-mail. Normal Alerts Android provides a number of ways for you to show popup notifications to your user as they interact with your application. Class Description app.AlertDialogorContext.showAlert() A popup alert dialog with two buttons (typically OK and Cancel) that take callback handlers. It can be created separately, or launched using the Application helper method Context.showAlert(). See the section after this table for more details. ProgressDialog A dialog box used to indicate progress of an operation with a known progress value or an indeterminate length (setProgress(bool)). See Views Progress Bar in ApiDemos for examples. Activity By setting the theme of an activity to android theme="android style/Theme.Dialog", your activity will take on the appearance of a normal dialog, floating on top of whatever was underneath it. You usually set the theme through the android theme attribute in your AndroidManifest.xml. The advantage of this over Dialog and AlertDialog is that Application has a much better managed lifecycle than dialogs if a dialog goes to the background and is killed, you cannot recapture state, whereas Application exposes a Bundle of saved values in onCreate() to help you maintain state. AlertDialog This is a basic warning dialog box that lets you configure a message, button text, and callback. You can create one by calling the Application helper method Context.showAlert(), as shown here. private Handler mHandler = new Handler() { public void handleMessage(Message msg) { switch (msg.what) { case ACCEPT_CALL answer(msg.obj); break; case BOUNCE_TO_VOICEMAIL voicemail(msg.obj); break; } } }; private void IncomingMotherInlawCall(Connection c) { String Text; // "Answer" callback. Message acceptMsg = Message.obtain(); acceptMsg.target = mHandler; acceptMsg.what = ACCEPT_CALL; acceptMsg.obj = c.getCall(); // "Cancel" callback. Message rejectMsg = Message.obtain(); rejectMsg.target = mHandler; rejectMsg.what = BOUNCE_TO_VOICEMAIL; rejectMsg.obj = c.getCall(); showAlert(null, "Phyllis is calling", "Answer", acceptMsg, true, rejectMsg); } Notifications Out-of-band alerts should always be displayed using the NotificationManager, which allows you to tell the user about something they may be interested in without disrupting what they are currently doing. A notification can be anything from a brief pop-up box informing the user of the new information, through displaying a persistent icon in the status bar, to vibrating, playing sounds, or flashing lights to get the user s attention. In all cases, the user must explicitly shift their focus to the notification before they can interact with it. The following code demonstrates using NotificationManager to display a basic text popup when a new SMS message arrives in a listening service, and provides the current message count. You can see several more examples in the ApiDemos application, under app/ (named notification*.java). static void setNewMessageIndicator(Context context, int messageCount){ // Get the static global NotificationManager object. NotificationManager nm = NotificationManager.getDefault(); // If we re being called because a new message has been received, // then display an icon and a count. Otherwise, delete the persistent // message. if (messageCount 0) { nm.notifyWithText(myApp.NOTIFICATION_GUID, // ID for this notification. messageCount + " new message" + messageCount 1 ? "s" "", // Text to display. NotificationManager.LENGTH_SHORT); // Show it for a short time only. } } To display a notification in the status bar and have it launch an intent when the user selects it (such as the new text message notification does), call NotificationManager.notify(), and pass in vibration patterns, status bar icons, or Intents to associate with the notification. Displaying a Progress Bar An activity can display a progress bar to notify the user that something is happening. To display a progress bar in a screen, call Activity.requestWindowFeature(Window.FEATURE_PROGRESS). To set the value of the progress bar, call Activity.getWindow().setFeatureInt(Window.FEATURE_PROGRESS, level). Progress bar values are from 0 to 9,999, or set the value to 10,000 to make the progress bar invisible. You can also use the ProgressDialog class, which enables a dialog box with an embedded progress bar to send a "I m working on it" notification to the user. Adding Your Application to the Favorites List You can t. Only a user can add an application to the Favorites list. Adding Items to the Screen Menu Every Android screen has a default menu with default options, such as adding the activity to the favorites menu. You can add your own menu entries to the default menu options by implementing Activity.onCreateOptionsMenu or Activity.onPrepareOptionsMenu(), and adding Item objects to the Menu passed in. To handle clicks implement Activity.onOptionsItemSelected() to handle the click in your Activity class. You may also pass the Item object a handler class that implements the Runnable class (a handler) but this is less efficient and discouraged. An application receives a callback at startup time to enable it to populate its menu. Additionally, it receives callbacks each time the user displays the options menu to let you perform some contextual modifications on the menu. To populate the menu on startup, override Activity.onCreateOptionsMenu; to populate it when the menu is called (somewhat less efficient), you can override Activity.onPrepareOptionsMenu(). Each Activity has its own menu list. Menu items are displayed in the order added, though you can group them as described in the Menu.add documentation. The following code snippet adds three items to the default menu options and handles them through the overridden Activity.onOptionsItemSelected() method. You can show or hide menu items by calling setItemShown() or setGroupShown(). // Called only the first time the options menu is displayed. // Create the menu entries. // Menu adds items in the order shown. @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); // Parameters for menu.add are // group -- Not used here. // id -- Used only when you want to handle and identify the click yourself. // title menu.add(0, 0, "Zoom"); menu.add(0, 1, "Settings"); menu.add(0, 2, "Other"); return true; } // Activity callback that lets your handle the selection in the class. // Return true to indicate that you ve got it, false to indicate // that it should be handled by a declared handler object for that // item (handler objects are discouraged for reasons of efficiency). @Override public boolean onOptionsItemSelected(Menu.Item item){ switch (item.getId()) { case 0 showAlert("Menu Item Clicked", "Zoom", "ok", null, false, null); return true; case 1 showAlert("Menu Item Clicked", "Settings", "ok", null, false, null); return true; case 2 showAlert("Menu Item Clicked", "Other", "ok", null, false, null); return true; } return false; } You can add key shortcuts by calling the Item.setAlphabeticShortcut() or Item.setNumericShortcut() methods, as demonstrated here to add a "C" shortcut to a menu item thisItem.setAlphabeticShortcut(0, c ); Adding Submenus Add a submenu by calling Menu.addSubMenu(), which returns a SubMenu object. You can then add additional items to this menu. Menus can only be one level deep, and you can customize the appearance of the submenu menu item. @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); // Parameters for menu.add are // group -- Not used here. // id -- Used only when you want to handle and identify the click yourself. // title menu.add(0, 0, "Send message"); menu.add(0, 1, "Settings"); menu.add(0, 2, "Local handler"); menu.add(0, 3, "Launch contact picker"); // Add our submenu. SubMenu sub = menu.addSubMenu(1, 4, "Days of the week"); sub.add(0, 5, "Monday"); sub.add(0, 6, "Tuesday"); sub.add(0, 7, "Wednesday"); sub.add(0, 8, "Thursday"); sub.add(0, 9, "Friday"); sub.add(0, 10, "Saturday"); sub.add(0, 11, "Sunday"); return true; } Adding yourself to menus on other applications You can also advertise your Activity s services so that other Activities can add your activity to their own option menu. For example, suppose you implement a new image handling tool that shrinks an image to a smaller size and you would like to offer this as a menu option to any other Activity that handles pictures. To do this, you would exposes your capabilities inside an intent filter in your manifest. If another application that handles photos asks Android for any Activities that can perform actions on pictures, Android will perform intent resolution, find your Activity, and add it to the other Activity s options menu. The offering application The application offering the service must include an intent-filter element in the manifest, inside the activity tag of the offering Activity. The intent filter includes all the details describing what it can do, such as a type element that describes the MIME type of data that it can handle, a custom action value that describes what your handling application can do (this is so that when it receives the Intent on opening it knows what it is expected to do), and most important, include a category filter with the value android.intent.category.ALTERNATIVE and/or android.intent.category.SELECTED_ALTERNATIVE (SELECTED_ALTERNATIVE is used to handle only the currently selected element on the screen, rather than the whole Activity intent. Here s an example of a snip of a manifest that advertises picture shrinking technology for both selected items and the whole screen. activity class="PictureShrink" !-- Handling class -- intent-filter label="Shrink picture" !-- Menu label to display -- action value="com.example.sampleapp.SHRINK_IT" / type value="image/*" / !-- MIME type for generic images -- category value="android.intent.category.ALTERNATIVE " / category value="android.intent.category.SELECTED_ALTERNATIVE" / /intent-filter /activity The menu-displaying application An application that wants to display a menu that includes any additional external services must, first of all, handle its menu creation callback. As part of that callback it creates an intent with the category Intent.ALTERNATIVE_CATEGORY and/or Intent.SELECTED_ALTERNATIVE, the MIME type currently selected, and any other requirements, the same way as it would satisfy an intent filter to open a new Activity. It then calls menu.addIntentOptions() to have Android search for and add any services meeting those requirements. It can optionally add additional custom menu items of its own. You should implement SELECTED_ALTERNATIVE in onPrepareOptionsMenu() rather than onCreateOptionsMenu(), because the user s selection can change after the application is launched. Here s a code snippet demonstrating how a picture application would search for additional services to display on its menu. @Override public boolean onCreateOptionsMenu(Menu menu){ super.onCreateOptionsMenu(menu); // Create an Intent that describes the requirements to fulfill to be included // in our menu. The offering app must include a category value of Intent.ALTERNATIVE_CATEGORY. Intent intent = new Intent(null, getIntent().getData()); intent.addCategory(Intent.ALTERNATIVE_CATEGORY); // Search for, and populate the menu with, acceptable offering applications. menu.addIntentOptions( 0, // Group 0, // Any unique IDs we might care to add. MySampleClass.class.getName(), // Name of the class displaying the menu--here, its this class. null, // No specifics. intent, // Previously created intent that describes our requirements. 0, // No flags. null); // No specifics. return true; } Display a Web Page Use the webkit.WebView object. Binding to Data You can bind a ListView to a set of underlying data by using a shim class called ListAdapter (or a subclass). ListAdapter subclasses bind to a variety of data sources, and expose a common set of methods such as getItem() and getView(), and uses them to pick View items to display in its list. You can extend ListAdapter and override getView() to create your own custom list items. There are essentially only two steps you need to perform to bind to data 1. Create a ListAdapter object and specify its data source 2. Give the ListAdapter to your ListView object. That s it! Here s an example of binding a ListActivity screen to the results from a cursor query. (Note that the setListAdapter() method shown is a convenience method that gets the page s ListView object and calls setAdapter() on it.) // Run a query and get a Cursor pointing to the results. Cursor c = People.query(this.getContentResolver(), null); startManagingCursor(c); // Create the ListAdapter. A SimpleCursorAdapter lets you specify two interesting things // an XML template for your list item, and // The column to map to a specific item, by ID, in your template. ListAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, // Use a template that displays a text view c, // Give the cursor to the list adapter new String[] {People.NAME} , // Map the NAME column in the people database to... new String[] {"text1"}); // The "text1" view defined in the XML template setListAdapter(adapter); See view/List4 in the ApiDemos project for an example of extending ListAdapter for a new data type. Capture Images from the Phone Camera You can hook into the device s camera onto your own Canvas object by using the CameraDevice class. See that class s documentation, and the ApiDemos project s Camera Preview application (Graphics/Camera Preview) for example code. Handling Expensive Operations in the UI Thread Avoid performing long-running operations (such as network I/O) directly in the UI thread — the main thread of an application where the UI is run — or your application may be blocked and become unresponsive. Here is a brief summary of the recommended approach for handling expensive operations 1. Create a Handler object in your UI thread 2. Spawn off worker threads to perform any required expensive operations 3. Post results from a worker thread back to the UI thread s handler either through a Runnable or a Message 4. Update the views on the UI thread as needed The following outline illustrates a typical implementation public class MyActivity extends Activity { [ . . . ] // Need handler for callbacks to the UI thread final Handler mHandler = new Handler(); // Create runnable for posting final Runnable mUpdateResults = new Runnable() { @Override public void run() { updateResultsInUi(); } }; @Override protected void onCreate(Bundle icicle) { super.onCreate(icicle); [ . . . ] } protected void startLongRunningOperation() { // Fire off a thread to do some work that we shouldn t do directly in the UI thread Thread t = new Thread() { public void run() { mResults = doSomethingExpensive(); mHandler.post(mUpdateResults); } }; t.start(); } private void updateResultsInUi() { // Back in the UI thread -- update our UI elements based on the data in mResults [ . . . ] } } For further discussions on this topic, see Developing Responsive Applications and the Handler documentation. Selecting, Highlighting, or Styling Portions of Text You can highlight or style the formatting of strings or substrings of text in a TextView object. There are two ways to do this If you use a string resource, you can add some simple styling, such as bold or italic using HTML notation. So, for example, in res/values/strings.xml you could declare this resource string id="@+id/styled_welcome_message" We are b i so /i /b glad to see you. /string /resources To style text on the fly, or to add highlighting or more complex styling, you must use the Spannable object as described next. To style text on the fly, you must make sure the TextView is using Spannable storage for the text (this will always be true if the TextView is an EditText), retrieve its text with getText(), and call setSpan(Object, int, int, int), passing in a new style class from the android.text.style package and the selection range. The following code snippet demonstrates creating a string with a highlighted section, italic section, and bold section, and adding it to an EditText object. // Get our EditText object. EditText vw = (EditText)findViewById(R.id.text); // Set the EditText s text. vw.setText("Italic, highlighted, bold."); // If this were just a TextView, we could do // vw.setText("Italic, highlighted, bold.", TextView.BufferType.SPANNABLE); // to force it to use Spannable storage so styles can be attached. // Or we could specify that in the XML. // Get the EditText s internal text storage Spannable str = vw.getText(); // Create our span sections, and assign a format to each. str.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); str.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); str.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 21, str.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); List of Files for an Android Application The following list describes the structure and files of an Android application. Many of these files can be built for you (or stubbed out) by the activityCreator.py application shipped in the tools/ menu of the SDK. See Building an Android Sample Application for more information on using activityCreator.py. MyApp/ AndroidManifest.xml (required) Advertises the screens that this application provides, where they can be launched (from the main program menu or elsewhere), any content providers it implements and what kind of data they handle, where the implementation classes are, and other application-wide information. Syntax details for this file are described in AndroidManifest.xml. src//myPackagePath/.../MyClass.java (required) This folder holds all the source code files for your application, inside the appropriate package subfolders. res/ (required) This folder holds all the resources for your application. Resources are external data files or description files that are compiled into your code at build time. Files in different folders are compiled differently, so you must put the proper resource into the proper folder. (See Resources for details.) anim/animation1.xml... (optional) Holds any animation XML description files that the application uses. The format of these files is described in Resources. drawable/some_picture.pngsome_stretchable.9.pngsome_background.xml... (optional) Zero or more files that will be compiled to android.graphics.drawable resources. Files can be image files (png, gif, or other) or XML files describing other graphics such as bitmaps, stretchable bitmaps, or gradients. Supported bitmap file formats are PNG (preferred), JPG, and GIF (discouraged), as well as the custom 9-patch stretchable bitmap format. These formats are described in Resources. layout/screen_1_layout.xml... (optional) Holds all the XML files describing screens or parts of screens. Although you could create a screen in Java, defining them in XML files is typically easier. A layout file is similar in concept to an HTML file that describes the screen layout and components. See Implementing a UI for more information about designing screens, and Layout Resources for the syntax of these files. values/arraysclasses.xmlcolors.xmldimens.xmlstrings.xmlstyles.xmlvalues.xml (optional) XML files describing additional resources such as strings, colors, and styles. The naming, quantity, and number of these files are not enforced--any XML file is compiled, but these are the standard names given to these files. However, the syntax of these files is prescribed by Android, and described in Resources. xml/ (optional) XML files that can be read at run time on the device. raw/ (optional) Any files to be copied directly to the device.
https://w.atwiki.jp/chain_chronicle/pages/42.html
2013年7月26日(金)より、Android版『チェインクロニクル』の配信を開始いたしました! ▼精霊石プレゼントキャンペーン▼ Android版配信開始を記念いたしまして「精霊石」が毎日もらえるログインキャンペーンを実施いたします! ○キャンペーン実施期間 2013年7月26(金) ~ 7月31日(水) 「精霊石」は様々なキャラクターと出会える酒場ガチャやバトル時の復活にご利用いただけるゲーム内アイテムです。 毎日ログインして冒険にお役立てください! ※キャンペーンアイテムの受け取りは、ゲーム内ホームのプレゼントアイコンより受け取ることができます。 なお、「精霊石」のご購入につきましては29日(月)よりご利用可能となります。 ▼ストーリー、エリアの開放▼ 現在メインストーリーは賢者の塔エリアまでお楽しみいただけます。 ストーリー、エリアの開放は順次行っていく予定です。 イベントやコラボレーションも予定しておりますので、今後の展開にご期待ください! ▼対応端末について▼ 動作安定を図るため、現在一部端末のみでのご提供となっております。 今後はより多くのお客様にお楽しみいただけるよう、対応機種は順次拡大予定です。 現在お持ちの機種にダウンロードすることができないお客様には申し訳ございませんが、今しばらくお待ちくださいますようお願いいたします。 また、「この機種に対応してほしい」といったご要望は、以下のフォームからご連絡ください。 >>Android 端末追加要望フォーム ご要望の多い機種については、優先的に確認作業を進めさせていただきます。 チェインクロニクルは、総勢約200名におよぶキャラクターが登場するファンタジーRPGです。 仲間との 絆 が生み出す色鮮やかなストーリーをお楽しみください。 これからもチェインクロニクルをよろしくお願いいたします。
https://w.atwiki.jp/elslibraone/pages/57.html
nexus7(2013)とiPhone4sとWindows7による比較。 iOS版では起動時にAZOOZAのロゴ画面が出る。 iOS版ではスタート時のメニューにEXITが無い。 Android版では画面左上にバッテリー、SDカード、ネットワークが表示されるが、iOS版ではバッテリーと時刻が表示される。 iOSは前回セーブしたデータが自動的に読み込まれる。 iOSには中断機能がない。 Windows版はフリーでできる範囲までです。(裏ダンジョンプレイはスマホにセーブデータを引き継ぐ)
https://w.atwiki.jp/androidplayapp/pages/105.html
エンターテイメント docomo Palette UI MEDIAS WP[N-06C]、P-01D、P-07C、GALAXY S II[SC-02C]、Q-pot.Phone[SH-04D]、AQUOS PHONE f[SH-13C]にプリインストールされている「docomo Palette UI」をアップデートするためのアプリです。 https //play.google.com/store/apps/details?id=com.nttdocomo.app.paletteui feature=apps_topselling_free Yahoo! JAPANウィジェット ホーム画面を便利に使うためのYahoo! JAPAN公式ウィジェット。メール、ニュース、天気、カレンダー、占いなど、ほしい情報がこれ1つで手に入る!ホーム画面をさらに便利に使うためのYahoo! JAPAN公式ウィジェットです。 https //play.google.com/store/apps/details?id=jp.co.yahoo.android.yjwidget feature=apps_topselling_free GO ランチャー EX (Go Launcher EX) https //play.google.com/store/apps/details?id=com.gau.go.launcherex feature=apps_topselling_free 壁紙アプリ - 背景 - 画像 Backgrounds シンプルと壁紙のアプリケーションを使いやすい。あなたが必要とすることができるすべての背景。170,000以上+イメージを持つ最速の壁紙アプリ。すべての背景は高品質、高精細な画像です。 https //play.google.com/store/apps/details?id=com.srsdev.wallpapers feature=apps_topselling_free [+]HOME (プラスホーム) 【無料】Androidビギナーさんでも使いこなせる国産ホームアプリ!人気デザインのきせかえテーマが多数掲載! https //play.google.com/store/apps/details?id=jp.co.a_tm.android.launcher feature=apps_topselling_free 壁紙メーカー 壁紙メーカーはお持ちのAndroid端末に最適なサイズの壁紙を作ることができるアプリです。あなたが撮影した写真や、端末に保存されている画像を利用して、壁紙を作ることができます。 https //play.google.com/store/apps/details?id=com.mss2011c.wallpapermaker feature=apps_topselling_free LauncherPro https //play.google.com/store/apps/details?id=com.fede.launcher feature=apps_topselling_free MultiPicture Live Wallpaper 画面ごとに異なる画像をライブ壁紙として表示。画面ごとに異なる画像を表示するライブ壁紙です。 https //play.google.com/store/apps/details?id=org.tamanegi.wallpaper.multipicture feature=apps_topselling_free 三連メーター2 情報画面では現在のバッテリー状況と充電方法などをバー表示し簡易グラフ表示では過去の残量記録などを見ることが出来ます。 https //play.google.com/store/apps/details?id=jp.siruba.HashiriyaMeter2 feature=apps_topselling_free 空色Photo*Camelog for[+]HOMEきせかえ 【無料】淡い色合いの写真をコラージュし、空色でまとめたきせかえテーマです♪観覧車やブランコ、空や建物など、『Camelog』に投稿された素敵な写真をいっぱい使いました! https //play.google.com/store/apps/details?id=jp.co.a_tm.android.plus_camelog feature=apps_topselling_free Zedge https //play.google.com/store/apps/details?id=net.zedge.android feature=apps_topselling_free Zeam Launcher https //play.google.com/store/apps/details?id=org.zeam feature=apps_topselling_free ババァ バッテリー残量表示アプリ「ババァ=バッテリーバァー」です。 https //play.google.com/store/apps/details?id=com.matsumo.babar feature=apps_topselling_free aniPet海洋水族館ライブ壁紙(無料版) 奥行きのある蒼く美しい水槽で熱帯魚を飼うライブ壁紙です。180種類の熱帯魚、最大15匹まで選べる。餌をあげて魚が成長し、稚魚も生まれる。背景なども設定できます。 https //play.google.com/store/apps/details?id=com.anifree.anipet.aquarium.ad feature=apps_topselling_free HAPPY!きせかえ for SP スマートフォンの壁紙がお好きなデザインにカスタマイズすることができます!!カワイイ、クールなきせかえから、ネタ系きせかえまで幅広いジャンルのデザインがございます! https //play.google.com/store/apps/details?id=jp.digimerce.HappyKisekae feature=apps_topselling_free Lovelyハートライブ壁紙(無料版) キラキラしたハートが舞うカワイイライブ壁紙です!キラキラしたハートが舞うカワイイライブ壁紙です♪ https //play.google.com/store/apps/details?id=jp.co.vibe.LovelyHeartFree feature=apps_topselling_free ぬこショートカットアイコン【無料版】 アプリのショートカットアイコンを可愛いアイコンにカスタマイズすることが出来るアプリです。表情やゆる感がたまらない「ぬこ」シリーズです♪ https //play.google.com/store/apps/details?id=jp.tjkapp.nukoshortcut feature=apps_topselling_free Fancy Widgets https //play.google.com/store/apps/details?id=com.anddoes.fancywidgets feature=apps_topselling_free Happy Sky ライブ壁紙 空をモチーフとした時間連動のライブ壁紙です。たまにステキな事が起こるかも!?空をモチーフとした時間連動のライブ壁紙です。 https //play.google.com/store/apps/details?id=jp.co.vibe.happyskylivewallpaper feature=apps_topselling_free OGQ 壁紙 HD 毎時間見ている携帯電話の壁紙がサンクムハダと私の心に平穏さまでもたらしてくれます。 https //play.google.com/store/apps/details?id=com.ogqcorp.bgh feature=apps_topselling_free Antique world for[+]HOME ハンドメイドの雑貨がいっぱいのかわいいきせかえテーマです♪お花やレース、アンティークモチーフ等を使ったかわいいハンドメイド小物できせかえテーマをコラージュ♪ https //play.google.com/store/apps/details?id=jp.co.a_tm.android.plus_toiro feature=apps_topselling_free Battery Changer ステータスバーに表示している標準のバッテリーアイコンを100%表示のアイコンでオーバーレイしてバッテリーアイコンを変更するアプリです。 https //play.google.com/store/apps/details?id=jp.ddo.shigadroid.batterychanger feature=apps_topselling_free バブルライブ壁紙 Bubble 楽しいバブルライブ壁紙、あなたがバーストして気泡をタップすることができます。 https //play.google.com/store/apps/details?id=com.xllusion.livewallpaper.bubble feature=apps_topselling_free ライブ壁紙 by マクドナルド マックのポテトがあなたの待ち受け画面をふわふわ飛び回るライブ壁紙です♪ https //play.google.com/store/apps/details?id=jp.co.mcdonalds.fun02 feature=apps_topselling_free ライブ壁紙ぴったん β 画像をリサイズし、画像全体がスクロールに応じて表示されるように、壁紙に設定します。 https //play.google.com/store/apps/details?id=com.shirobakama.imglivewp feature=apps_topselling_free はちゅねでんち はちゅねミクさんがバッテリー残量をお知らせするウィジェットです。ホーム画面に張り付けてご利用ください。 https //play.google.com/store/apps/details?id=com.gmail.g30310.HachuDen01 feature=apps_topselling_free EXILE TRIBE LIVE TOUR 2012 EXILE一族が巻き起こす究極のENTERTAINMENT『EXILE TRIBE LIVE TOUR 2012 ~TOWER OF WISH~』の限定ライブ壁紙です。 https //play.google.com/store/apps/details?id=jp.co.ldh.tribelivetour2012.exile feature=apps_topselling_free paper town ライブ壁紙 Free ペーパークラフトで表現された、おしゃれな街並みが、なんだか可愛いライブ壁紙。paper townに冬がやってきた!雪が降り積もり、いつもと違った街並みを演出!冬を楽しもう! https //play.google.com/store/apps/details?id=uistore.fieldsystem.papertownfree feature=apps_topselling_free ミルクチョコレート ライブ壁紙 ミルクチョコレートでおなじみ明治のミルクチョコレートがライブ壁紙になって登場!スマートフォンを明治ミルクチョコレートのライブ壁紙で可愛くしよう!画面をタップするとお菓子が出てきたり、時間と連動してデザインが変わるから、設定して楽しんでね https //play.google.com/store/apps/details?id=meiji.co.jp.livewallpaper.meiji003mchoco003 feature=apps_topselling_free カールおじさん ライブ壁紙 カールでおなじみカールおじさんがライブ壁紙で登場!画面にタッチすると増えたり、傾けたりするとおじさんたちが移動するよ!今すぐチェック! https //play.google.com/store/apps/details?id=meiji.co.jp.livewallpaper.meiji002karl002 feature=apps_topselling_free ぼうにんげん ライブ壁紙 Free ぼうにんげんの見ているだけで楽しくなっちゃうライブ壁紙♪がんばり屋だけど、ちょっとマヌケなぼうにんげんが繰り広げる、お茶目なコメディー!?見ているだけで楽しくなっちゃうライブ壁紙♪ https //play.google.com/store/apps/details?id=uistore.fieldsystem.bouningen_free1 feature=apps_topselling_free Girly stripe for[+]HOME ピンクのストライプデザインにガーリーなアクセサリーやアンティークモチーフなど、ハンドメイドの小物でコラージュしたテーマで可愛くきせかえませんか? https //play.google.com/store/apps/details?id=jp.co.a_tm.android.plus_toiro2_stripe feature=apps_topselling_free ぺそぎん時計 デジタル時計ウィジェットCLOCK 無料デコメ 人気キャラクター「ぺそぎん」の癒される時計(CLOCK、WATCH、TICKER)ウィジェット(WIDGET)です。ライブ壁紙、無料デコメ絵文字、育成ゲーム付き https //play.google.com/store/apps/details?id=org.artsplanet.android.pesoclocklite feature=apps_topselling_free アニ★ちぇん:壁紙・待受 誰でも簡単に設定できる! 誰でも簡単!ホーム画面のスクリーンごとに別々の壁紙を設定できちゃう無料で盛りだくさんの壁紙もゾクゾク提供中!誰でも簡単に画面ごとに好きな画像を背景に設定できるライブ壁紙アプリです。 https //play.google.com/store/apps/details?id=jp.anichen feature=apps_topselling_free 3D炎のライブ壁紙 3D炎のライブ壁紙高品質な3D火災ライブ壁紙アプリです。3Dの火災は、3Dキューブ内のライブ壁紙です。 https //play.google.com/store/apps/details?id=fire3dLive.liveWPcube feature=apps_topselling_free スチームパンクスカル無料壁紙 アニメーションギア、電球やタッチの効果でスカルをスチームパンク! https //play.google.com/store/apps/details?id=com.ratana.jazzcat.steampunkskullfree feature=apps_topselling_free ドラゴンボールZの壁紙 あなたのAndroidデバイスのためのドラゴンボールZの壁紙 https //play.google.com/store/apps/details?id=com.andronicus.dbzwallpapers feature=apps_topselling_free
https://w.atwiki.jp/china_pad/pages/235.html
1 次スレは 980あたりが宣言して 数千円から二万円台の低価格で怪しい中華Android搭載タブレットや、iPad模倣品などを扱うスレです。 このスレで扱う価格帯は0~29999円です。 キャリア製品の話題は別スレでどうぞ。 ※「中華Androidタブレット」は『道楽』です、勘違いしないように。 お金が惜しい、失敗したくない人は高価格スレの製品を購入しましょう。 保証無し、仕様違い、文鎮化等のリスクを自前で負える漢は楽しみましょう! ■関連サイト 【APad】中華パッド/Androidタブレット【iped】wiki http //www37.atwiki.jp/china_pad/ Android用アプリケーション http //jp.androlib.com/ ■メーカーのホームページ (中国語だがGoogleChromeの自動翻訳でもニュアンスは感じ取れる) 原道 http //www.yuandaocn.com Ainol http //www.ainol.com ONDA http //www.onda.cn Cube http //www.51cube.net UZone http //www.szuzone.com teclast http //www.teclast.com/ haipad http //www.haipad.net/ ployer http //www.ployer.cn/ gadmei http //www.gadmei.com/ ramos http //ramos.com.cn/ dawa http //www.dawagroup.com.cn/index-en.html ICOO http //www.aoicoo.com/ aigo http //www.aigo.com/web/ SmartDevices http //www.smartdevices.com.cn/ PIPO http //pipo.cn/ VVSUM http //www.vvsum.com/ ■前スレ 中華Androidタブレット74枚目 http //ikura.2ch.net/test/read.cgi/wm/1360232902 2 実店舗がある販売店 《国内》 東映無線ラジオデパート店 http //www.toeimusen.co.jp/~dp/ apad専門ショップ - http //shop.apadjp.com/ AVICオンライン アンドロイドタブレット専門店(イーモバイル正規販売代理店) http //avic-online.com/ ネット販売店 Yahoo!オークション - http //auctions.search.yahoo.co.jp/search?p=Android auccat=0 tab_ex=commerce ei=euc-jp- AndroidSHOP-JP http //www.androidshop-jp.com/ 激安なんでも屋 - http //www.gekiyasunandemoya.com/ AVICオンライン アンドロイドタブレット専門店 (イーモバイル正規販売代理店) http //avic-online.com/ AVICオンライン アンドロイドタブレット公式ブログ http //aviconline.anisen.tv/ Android Tablet Shop - http //andxroid.com/ apad専門ショップ【萌え声注意】 - http //shop.apadjp.com/ UGキングダム - http //ug-kingdom.com/ あきばおー - http //www.akibaoo.co.jp/01/main/b/0/actionNameTxt/search?srchWordTxt=Google+Android イオシス - http //iosys.co.jp/ のっきーPC - http //nokkypc.cart.fc2.com/ パチモンTV - http //pachimon.tv/ SMART SHOP(スマートショップ)- http //www.netyokocho.jp/smartshop/ 赤札天国 http //akafudatengoku.com/ 東映無線ラジオデパート店 http //www.toeimusen.co.jp/~dp/ 電脳ゲート http //dennogate.com/ medue http //www.rakuten.co.jp/medue/ 東京デジ市場 http //www.digistar.co.jp/ ドキドキ堂 http //dokidokido.com/ アンドロイド屋 http //www.i-androidtablet.com/ 販売店《海外》 Aliexpress - http //www.aliexpress.com/ Pandawill.com - http //www.pandawill.com/ タオバオ http //s.taobao.com/search?q=android+%C6%BD%B0%E5 suggest_query=android+%C6%BD%B0%E5 sb_id=5 suggest=0_3 source=suggest wq=android+ 3 ■Rockchip RK3188(Cortex-A9*4(~1.6GHz) + ARM Mali400MP4 533MHz) RK3066の後継SoC、28nmHKMGでの製造。Mali-400MP4のクロックはRK3066から2倍になった。 搭載機にCUBE U30GT2,原道N70四核RKなどがある。2D専用コアを搭載しているとか。 1.8GHzという表記のこともあるが、実際には1.6GHzでの駆動の可能性が高い ■Rockchip RK3066(Cortex-A9*2(~1.6GHz) + ARM Mali400MP4 266MHz) TSMCの40nmで製造されている、デュアルコアの中華パッドでは最も採用された。 デュアルコアSoCの中ではとても高性能。 PIPO U1、原道N70双撃HD、CUBE U30GT、ICOO D70PROなど、様々な端末に搭載されている ■AllwinnerA31(Cortex-A7*4(~1GHz?) + PowerVR SGX544MP2) A10の後継機、CPUはクアッドコアだがデュアルコアのCortex-A9程度の性能。 GPUの性能が高く、動画も4k2kに対応している。40nmでの製造。 8コアGPUという表記のこともあるが、実際には2コアのSGX544。 ■ACT ATM7029(Cortex-A5*4(~1.2GHz?) + Vivante GC1000) Novo10Hero2,Novo7Venusなどに搭載された。40nmでの製造。 他のクアッドコアSoCに比べ性能がとても低い。 Cortex-A9を謳うこともあるが、実際は低価格低性能のCortex-A5でほぼ確定。 ■Amlogic8726-MX(Cortex-A9*2(1.5GHz) + Mali400MP2 400MHz) 「Amlogic 8726-M6」と表記されることもあるが同じモノ。40nmでの製造。 性能ではCPU,GPU共にRockchip RK3066に劣るが、AinolやONDAの端末を中心に採用された。 代表的な端末にNovo7Fire、Novo7Crystal、Novo10Heroなどがある。 ■Nvidia Tegra3(Cortex-A9*4(+1) (1.2~1.6GHz) + GeForceULP*12) 大手メーカーのタブレットなどでよく採用されていた。製造はTSMCの40nm。 中華パッドではGalapadやViewSonic N710に搭載されている。 メインのCPUはクアッドコアだが、低負荷時は(+1)の省電力コアに切り替わる。 ■Samsung Exynos4412(Cortex-A9*4(1.4GHz~1.6GHz) + Mali400MP4 440MHz) サムスンの32nmHKMGで製造された高性能省電力チップ。GalaxyNote2にも搭載されている 中華でもいくつか採用されており、Ramos W30やRamos W30HDに搭載された。 なお中華パッドに搭載されているものはほとんどが1.4GHzである。脆弱性の問題があるとか。 ■AllWinnerA13 (Cortex-A8(1GHz) + Mali400) AllwinnerA10の廉価版、55nmでの製造。 低価格で動画再生能力が非常に高いため、低価格向けで大人気なSoC。 シングルコアCortex-A8とシングルコアMali400なので、性能はとても低い。 ■MediaTek MT6589(Cortex-A7*4(~1.2GHz) + PowerVR SGX544) UMTS Release 8、HSPA+、TD-SCDMAを統合したマルチモードモデムを搭載している。 28nmでの製造。3G通信機能がある端末に採用されることが多い。 A31と同じCortex-A7クアッドコアだが、より省電力でCPUのクロックも高い。 ■Texas Instruments OMAP4430、OMAP4460(Cortex-A9*2(~1.5GHz) + PowerVR SGX540) 45nmプロセス。4430は~1.2GHzまで、4460は~1.5GHzまで対応しGPUクロックも向上している Googleのリファレンス機で採用、ICSはOMAP4向けに最適化され、ベンチマーク値以上のレスポンスを感じさせる。 大手の携帯で採用も多いが、中華での採用はsmartQシリーズのみ ■Texas Instruments OMAP4470(Cortex-A9*2(~1.8GHz) + PowerVR SGX544 + Cortex M3*2) 動作クロックを上げ、GPUも従来の2倍以上に強化され、2Dアクセラレータも追加されている。 低負荷時にはメインCPUを停止させ、より省電力なCortexM3に制御を任せる Kindle fireHD8.9”、nookHD等で採用、高価なSOCなのかsmartQのみ採用の中華では空気なSOC 4 ■割引クーポン紹介サイト ●Aliexpress● http //www.retailmenot.com/view/aliexpress.com ●Pandawill.com● http //www.retailmenot.com/view/pandawill.com ●dealextreme● http //www.retailmenot.com/view/dealextreme.com ●FocalPrice● http //www.retailmenot.com/view/focalprice.com Q. ○○にお勧めなのを教えてください。 A. 中華タブでは、お勧めできるほど安定した品質の製品がない。 中華じゃない低価格タブでは、お勧めできるほどの性能を持つ製品がない。 自分で判断できないうちは素直に高価格タブを買いましょう。 Q. マルチコアCPUはやっぱりすごいの? A. ものによります。 CPUとGPUとの組み合わせ、相性によって性能が大きく異なります。 またタブレットによってはGPUも1コアとカウントしているところもあリます。 しかし並列処理が出来るため、同クロック数シングルコアより性能が良い傾向があります。 Q. 文鎮化しちゃいました(涙) タスケテ… A. もうどうすることもできません。 リスクがあるのを承知で買ったのだから、素直に諦めましょう。 それでも諦められないなら、とにかくググりましょう。 また運が良ければ購入店が対応してくれますが… Q. で、結局どのタブがいいの? A. ググレカス 5 ■各メーカー専スレ 【ARM】ainol NOVO7 シリーズ part20【MIPS以外】 http //ikura.2ch.net/test/read.cgi/wm/1359976429/ 【中華】原道 タブレット【Android】5枚目 http //ikura.2ch.net/test/read.cgi/wm/1358696758/ 【Android平板】ONDAタブレット【中華/恩田】6枚目 http //ikura.2ch.net/test/read.cgi/wm/1363775793 【安卓平板】 CUBEタブレット 【酷比魔方】2枚目 http //ikura.2ch.net/test/read.cgi/wm/1349170422/ 【平板電脳】TECLASTタブレット Part2【台電科技】 http //ikura.2ch.net/test/read.cgi/wm/1350830655/ Android Momo系 統合スレ http //ikura.2ch.net/test/read.cgi/wm/1340812849/ 【中華平板】ICOOタブレット Part1【マイナー?】 http //ikura.2ch.net/test/read.cgi/wm/1329501846/ 【MID】北京智器 SmartQシリーズ Part9【Tablet】 http //ikura.2ch.net/test/read.cgi/wm/1347851052/ 【中華】PIPO タブレット【Android】1枚目 http //ikura.2ch.net/test/read.cgi/wm/1347198736/ ■その他関連スレ 【Android】5インチタブレット、スマホ総合 9枚目 http //ikura.2ch.net/test/read.cgi/wm/1356706182/ 【騎士】MIPSベースAndroid総合 2枚目【普及版】 http //ikura.2ch.net/test/read.cgi/wm/1330356807/ 勝手に作りましたがよければ使ってください 專スレへのリンクは最新でない場合があるので注意してください 旧SoCテンプレ(~73枚目) ARM Cortex系 AllWinner A10 (Cortex-A8 + Mali400MP) 主な製品 Novo7Advanced、VX610W、Vi20W、Vi30、MOMO9等 低価格省電力で動画再生能力が非常に高いため、中華パッド業界で大人気なSoC。 2012年上半期では最も多く採用されていたが、その後マルチコア機が主流になり衰退。 「Many core」と紛らわしい謳い文句がついていることも多いが、実際はA8ベースのシングルコアなので騙されないよう。 AllWinner A13 (Cortex-A8 + Mali400MP) 主な製品 PD50 旗型、VX580W ?尚版・?准版 A10の兼価版。小型モデルへの採用が多い。 Rockchip RK2918 (Cortex-A8 + GC800) 主な製品 T760、N90、U9GT2、P81HD、ioPad6等 動画再生以外はA10とほぼ同等の能力があるため、こちらも大人気だったが、A10と同じ理由で衰退。 RockChip RK3066(Cortex-A9*2、Mali-400MP*4) 主な製品 CUBE U30GT、CUBE U19GT、原道N90双撃2、Yooe R2など NVIDIA Tegra2 (Cortex-A9*2 + GeForceULP) 主な製品 ICONIA TAB A100、A500 高価格帯によく採用されていたが最近は3万円以下に落ちてくる製品も出てきた。CPU、GPUともに優秀だが動画再生はゴミ SAMSUNG S5PC210 (Cortex-A9*2 + Mali400MP) 主な製品 edenTAB(キングソフトのアレ) GLALXY S2に採用されている高価格なSoC。 AMLogic 8726-M (Cortex-A9 + Mali400MP?) 主な製品 Novo8、W6HD 製造プロセスが65nm→45nmに微細化された8726-M3というのもあるらしい。 AMLogic 8726-M6(Cortex-A9*2、Mali-400MP*2) 主な製品 Ainol Elf2, Aurora2, Burning、Ramos W17Pro 「Amlogic 8726-MX」と表記されることもあるが同じモノ Mali400のコア数は2つながらも400MHzと高めのクロック 結構熱くなるらしい AMLogic 8726-M3L(Cortex-A9(1GHz~) + Mali400) 主な製品 Ainol Mars, Tornado 上記8276-M6/MXの廉価版で、シングルコア VIA WM8850 (Cortex-A9、Mali-400) 主な製品 EKEN A70/W70など TI OMAP4430/4460 (Cortex A9*2、PowerVR SGX 540) 主な製品 SmartQ Ten3 T15/T19/T20/S7/Q8 世界各社のスマホやタブレットPCで広く使われるSoC。でも中華PAD界での採用はSmartQシリーズのみの少数派。 Hisilicon K3V2 (Cortex-A9*4、) 主な製品 Huawei MediaPad 10 FHD Freescale iMX6(Cortex-A9*1~4、) 主な製品 Yooe R4 (未発表) Freescale i.MX6シリーズ(Cortex A9*1/2/4・Vivante GC2000?) 主な製品 CHEWI V90、Yooe R4 コメント
https://w.atwiki.jp/ht03a2ch/pages/16.html
ブラウザで見やすいサイト 読み物 暇つぶしWikipedia おまかせでWikipediaを表示 暇つぶし青空文庫 おまかせで青空文庫を表示 宿泊 楽天トラベル HT-03A向けに表示スタイルを最適化 レンタル ぽすれん Android β版 DVD・CDレンタル