タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

javaとandroidに関するanimistのブックマーク (21)

  • AsyncTask を利用した非同期処理 - Android 開発入門

    非同期処理と UI の更新 ではワーカースレッドを利用した非同期処理と UI を更新する時には Handler を利用して UI スレッドに対して処理をポストするという点について説明しました。 ここでは、そうしたバックグラウンドでの処理と UI とのやりとりをひっくるめて簡単に操作するための、 AsyncTask クラスの利用方法を説明します。 さらに、ついでに ProgressDialog のキャンセル処理とプログレスバーの表示についても説明します。 ProgressDialog と非同期処理のキャンセル ここで作るサンプルプログラムは次のようなものです。まずはボタンが一つだけあります。 このボタンをクリックすると、下のスクリーンショットのようにプログレスバー付きの ProgressDialog が表示されます。 この進捗が100%になったところで、ダイアログは消えます。また、 BACK

    AsyncTask を利用した非同期処理 - Android 開発入門
  • StrictMode & android.os.NetworkOnMainThreadException - Qiita

    Android 3.0からはStrictModeがデフォルトで有効になっており、UIスレッド上でネットワーク処理を行おうとすると android.os.NetworkOnMainThreadException という例外が投げられる。 StrictModeを無効にするには後述のコードを書けばいいけれど、テスト以外ではAsyncTaskなどを使いUIスレッド外で処理した方が良いと思う。 StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().permitAll().build()); Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read b

    StrictMode & android.os.NetworkOnMainThreadException - Qiita
  • android.os.NetworkOnMainThreadExceptionエラー

    AndroidでPOST送信の処理を実装したコードを使っていて、targetが2.3.3の場合何の問題もなかったのに、タブレット対応ということで4.2にレベルを上げた途端にエラー発生。 最初は何のことかさっぱりでした。 デバッグのコンソールを見たら何とFATAL ERRORで、android.os.NetworkOnMainThreadExceptionがどうしたこうした...。 調べてみたら、3.0以降「StrictMode」がデフォルトで有効になっており、メインスレッドでネットワーク処理を行うと例外がスローされるようになっておりました(TT)。 で、どうすりゃいいのとあれこれ調査した結果、AsyncTaskを継承したクラスを作ってそこで処理するようにすればいいのね、ってことが分かった。 これはその際記述したコードについてのメモ。 非同期処理した後、メインスレッドの関数をキックして処理を

  • android開発|「AsyncTask」利用:android.os.NetworkOnMainThreadExceptionエラーへの対応方法 — 検索プログラマのメモ帳

    壁にぶつかったら検索で調べるプログラマのちょっと遅れたメモ帳。たまに自分で挑戦する。 Skip to: Content | Sidebar | Footer 「android.os.NetworkOnMainThreadException」はメインスレッドでネットワーク連携などをやるとandroidosのバージョンが3.0以上だったら起こるようになっているようです。androidos2.3とかのスマホを所有していて、テストでは起こらなかったけど配布してユーザーからの報告で築くということがると思います。 AndroidはGingerBreadで追加になった「StrictMode」が3.0以降はデフォルトで有効になっており、メインスレッド(UIスレッド)でネットワーク処理を行うと同例外がスローされるのである。 要は、サーバーとの連携などするときは、「AsyncTask」を継承した内部クラスを作

  • DefaultHttpClientを使ってコンテンツを取得する | TechBooster

    今回はDefaultHttpClientを使ってコンテンツを取得する方法を説明します。 DefaultHttpClientではHTTPリクエスト(GetやPut)を発行することができます。 「XMLをパース(解析)する」の中で紹介したサンプルを、DefaultHttpClientを使って取得したコンテンツをパースするものに修正してみます。 前準備 以前のサンプルからStringとして用意したXMLをパースする箇所をメソッドとして抜き出しておきます。 void parse(String str) { try{ XmlPullParser xmlPullParser = Xml.newPullParser(); xmlPullParser.setInput(new StringReader(str)); int eventType; while ((eventType = xmlPullPar

    DefaultHttpClientを使ってコンテンツを取得する | TechBooster
  • Androidでサーバと通信する方法(Asynctaskによる非同期HTTP通信) | TechBooster

    DefaultHttpClientを使ってコンテンツを取得するではDefaultHttpClientをつかってHTTPリクエスト(Get)を処理しました。 今回はPostリクエストを行い、サーバーへコンテンツを送ってみます。また、前回では簡単化のために説明を省いていましたが、HTTPリクエストなど非同期通信処理はUIスレッド以外で実施しないと、レスポンスが悪化したり、強制終了(ANR)の原因となったりします。Postリクエスト処理時にAsynctaskを使って非同期処理を行うのように、AsyncTaskで別スレッドを作成、非同期化を行うまでを解説します。 HTTPリクエスト Postメソッド AsyncTaskによる非同期処理化 サンプルコードは続きから。 1.HTTPリクエスト Postメソッドの実装 DefaultHttpClientをつかってコンテンツを送信してみましょう。以下のサン

    Androidでサーバと通信する方法(Asynctaskによる非同期HTTP通信) | TechBooster
  • [Android Studio] 開発を始める前に知っておきたい基本的な使いかた | DevelopersIO

    はじめに Android 開発者のみなさん、Android Studio はインストールしてみましたでしょうか?筆者も公開されてからいろいろ触ってみましたが IntelliJ IDEA を触ったことがなかったので、まだ慣れていません。。しかし今後は Android Studio が主流になってくると思うのでいち早く慣れておきたいところですね。 ということで、下記の公式ガイドをベースに Android Studio の基的な使いかたを出来る限り分かりやすくまとめてみました! Android Studio Tips and Tricks | Android Developers プロジェクト構成 まずはプロジェクト構成です。Android Studio はこれまでと違い「Gradle」というビルドシステムを採用しています。そのためいままでのプロジェクト構成と異なっています。下図は Eclip

    [Android Studio] 開発を始める前に知っておきたい基本的な使いかた | DevelopersIO
  • アラートダイアログ(AlertDialog)を使用するには - 逆引きAndroid入門

    概要 android.app パッケージ - AlertDialog クラスを使用します。 ソースコード package com.adakoda.android.alertdialogsample; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; public class AlertDialogSampleActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.la

  • アクティビティを開始して戻り値を取得する - Android 開発入門

    ここでは新しい アクティビティを追加し、そのアクティビティを開始し、そしてそのアクティビティを閉じるときに元のアクティビティで結果コードを取得する方法を説明します。 Eclipse の使い方の説明を兼ねて、アクティビティの追加方法も示します。 ここで作成するデモプログラム まずはここで作成するデモプログラムの動作をみてみましょう。UI のレイアウトなどは特に凝ったところもありませんので、ここでは説明しません。 不安な方は はじめてのアンドロイドプログラム などをみてください。 メインのアクティビティにボタンがあります。これをクリック (タップ) します・・・ すると新しいアクティビティが開始されて表示されます。ボタンが二つあります。 キャンセルの方をクリックするとアクティビティは閉じて・・・ メインアクティビティ側で結果コードを取得して、クリックしたボタンに応じた動作ができました。 Ecl

    アクティビティを開始して戻り値を取得する - Android 開発入門
  • Android | ログの出力

    ログの出力方法を確認します。ログにはデバック用に変数の値を出力したり実行時エラーのエラー内容を出力したりといった用途が考えられますが、後でログを確認する時に便利なように書き出される内容をいくつかの種類に分類して書き出す事ができるようになっています。種類には次のようなものがあります。 ERROR エラー WARN 警告 INFO 情報 DEBUG デバック VERBOSE ログの種類別にログを書き出すためのstaticメソッドがそれぞれ用意されています。 ERROR: e public static int e(String tag, String msg) Send an ERROR log message. Parameters: tag Used to identify the source of a log message. It usually identfies the clas

  • [Android]ブロードキャストインテントを受け取る

    Androidには明示的/暗黙的インテントの他にブロードキャストインテントという仕組みがあります。 明示的/暗黙的インテントは特定のアクティビティのみが受信するのに対して、 ブロードキャストインテントは複数の受信者(レシーバ)が受信することができます。 ブロードキャストインテントの一例を挙げます。例えば、 ・バッテリー残量が残り少なくなった ・スクリーンがONになった といったイベントが発生したとき、Androidシステムはブロードキャストインテントを送信します。 複数の受信者はこれらのインテントを受け取ることで、イベント発生を知ることができ、各々の適切な処理を行うことができます。 システムから送信されるブロードキャストインテントには以下のようなものがあります。 この他にも多くのブロードキャストインテントが定義されています。 (http://developer.android.com/re

  • フラグメント間の通信 - Android 開発入門

    複数のフラグメント間の UI を利用する場合であっても、あたかも一つのアクティビティ内で振る舞いを定義するように、 簡単に動作を定義できます。 ここでは簡単なサンプルを作ることで、異なるフラグメント内のウィジェットにアクセスする様子を見てみましょう。 なお、フラグメントは Android 3.0 以降のものであることに注意してください。Android 2 以前の環境では動作しません。 異なるフラグメントに属する UI 要素へのアクセス ここで作るプログラムは次のようなものです。 まず、黒(デフォルト背景色) と青のフラグメントがあります。黒い側にはエディットテキストとボタンが配置されています。 一方、青いフラグメント内には TextView がひとつ配置されています。 エディットテキストに何か文字を入力して、ボタンを押すと・・・ TextView にその文字が表示されます。 こうした動きは

    フラグメント間の通信 - Android 開発入門
  • [Android]Fragmentはバックグラウンドスレッドから操作できる

    GDDとは「Gut's Driven Development」の略です。簡単にいうとガッツ駆動方式のシステム開発です。 えぇまぁ、私の開発スタイルです。このBlogでは、そんなシステム開発の作業で発見したことを記録していきます。 (Google Developer Daysとはなんの関係ありません。) AndroidUIを操作をメインスレッドのみで行うシングルスレッドモデルで設計されています。 バックグラウンドスレッドから、UIの操作を行う時は、Handler経由で行うのが定石とされています。 で、今日、コードレビューしていると、バックグラウンドスレッドの中で、DialogFragmentを表示する処理を書いているのを見つけました。 ってかこれだめだよね。と思って動作させてみると、普通にダイアログが出てくる。 なんで例外でないんだろう?と思って調べてみると、まわりまわってHandler経

  • http://lab.bizreach.co.jp/724/

  • Fragment の利用パターン

    Android UI勉強会」のあんざいさんのスライドです。動画はこちら。 http://www.youtube.com/watch?v=Xt-RtKJdhM8 【PR】あんざいさんのはこちらからご購入いただけます。 http://direct.ips.co.jp/androUI/

    Fragment の利用パターン
  • HoneyCombで新たに追加されたFragmentを動的に変化させる | TechBooster

    「PreferenceFragmentを使って2Paneな設定画面を作成する」「Fragmentを使ってMenuを動的に作成する」にて、Android3.0で追加された、Fragmentについて紹介してきました。 今回も、Fragmentの機能を紹介していきます。 FragmentはActivityなどと同じ様に、ライフサイクルを持ちます。 それらを確認した上で、Button操作による、Fragmentの追加/編集を行っていきましょう。 Fragmentのライフサイクル Fragmentにはライフサイクルがあります。 それは以下の通り。基的な流れはActivityと同様ですが、UIの生成等に関わるMethodが追加されています。 〜コアライフサイクルMethod〜 1. onAttach(Activity) →Activityに関連付けされた際に一度だけ呼ばれる。 2. onCreate

  • フラグメントの基礎 - Android 開発入門

    AndroidAndroid 3.0 (ハニコム "Honeycomb") ではじめてタブレットに最適化されました。 フラグメント (fragments) もタブレット向けに導入された仕組みの一つです。 フラグメントを使うと、スマートフォンよりも広いタブレットのディスプレイをより有効に利用することができるのです。 では、そのフラグメントとは何か説明しましょう。 Android タブレットのフラグメントとは? フラグメント (fragment) というのは、英語で「断片」とか「一部分」という意味です。 何の一部分かというと、フラグメントは「アクティビティの振る舞いの一部分」です。 "フラグメント" として小さな UI 部品を作り、それを組み合わせて一つのアクティビティを作り上げることが可能となります。 スマートフォン端末でも画面の大小で苦労したのに、タブレットではさらに広大な UI

    フラグメントの基礎 - Android 開発入門
  • エントリーポイント(アプリ起動時に最初に表示されるアクティビティ)が定義されている場所 - 酢ろぐ!

    エントリーポイント(アプリ起動時に最初に表示されるアクティビティ)は、AndroidMainifest.xmlで定義されている。MainMenuActivityというactivity要素配下のintent-filter要素にactionとcategoryが定義されているのが判るでしょうか。 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="jp.softbuild.sampleApp" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@str

    エントリーポイント(アプリ起動時に最初に表示されるアクティビティ)が定義されている場所 - 酢ろぐ!
  • Android Fragment を使う

    ■ Fragment のサブクラス ・DialogFragment ・ListFragment ・PreferenceFragment ・WebViewFragment ■ その他のヘルパークラス ・FragmentManager ・FragmentTransaction Activity のレイアウトにフラグメントのレイアウトを挿入する ■ Activity のレイアウトファイルに <fragment> タグで入れる <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android

    Android Fragment を使う
  • TECH PROjin

    セキュリティソリューション事業部からのお知らせ セキュリティソリューション事業部のブログサイトを新たに開設いたしました。 https://blog.sie-security.com/ 今後のセキュリティニュースの投稿は上記URLのサイトからとなります。よろしくお願いいたします。 担当:TY …More Read

    TECH PROjin