2012-12-01から1ヶ月間の記事一覧
Main.java package com.efolab.t326; /* * 一番シンプルなSQLDb * すべての引数はMain側で保持する */ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.…
自作ライブラリ作成 プロジェクト生成 isLibraryをチェックして作成する (以下は作成後のプロパティ) Manifest.xml タグを定義のチェックを外す リソースファイル 不要なので削除する(以下は削除したあと:なにもない) 必要なクラスを作成する 普通に作…
javascript 基本構文 var XHRConnection = function(args){ var _private = { //private property "url":"null", "params":{}, "callback":{} }; var __constractor = function(args){ //constractor var _this = Object.create(null); //hash XHRConnection…
手順 AppWidgetでサービスをstartService() サービスは別プロセス(Manifestで指定 process:another) サービスのonStartCommendでロケーションマネージャを起動 requestUpdate()を実装 ロケーションマネージャのonLocationChange()が発生したとき(位置変更…
Intentを新しく作ってからstopService() stopServiceでonDestroyが呼び出されている。 GPSの印がなくなっている @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { // TODO Auto-generated method…
Intent intentSetting = new Intent(context,MSettingActivity.class); //MSettingActivityクラスへの明示的インテント //getActivityでアクティビティへのPendingIntent PendingIntent pendingSetting = PendingIntent.getActivity(context, 0, intentSetti…
Point widgetはonUpdateでサービスを起動するだけ サービス側でリモートビューを生成してウィジェット画面を制御する ボタンのイベントをセットしてから、ウィジェット画面の「更新処理」は必須。 明示的インテントを使えば、マニフェストへのフィルタ追記が…
MWidget.java package com.efolab.t313; import android.app.PendingIntent; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.content.Intent; import android.wi…
@Override public void onStatusChanged(String provider, int status, Bundle extras) { switch (status) { case LocationProvider.AVAILABLE: Log.v("Status", "AVAILABLE"); break; case LocationProvider.OUT_OF_SERVICE: Log.v("Status", "OUT_OF_SERVI…
マニフェストファイル Receiver追加 name MainAppWidget で作成 intent-filter追加 action追加 action name は android.appwidget.action.APPWIDGET_UPDATE Receiverにmeta-data追加 meta-data nameは android.appwidget.provider ここまででmanifest.xmlの…
手順としては implements Parcelableしたクラスを作る(今回はMyPointクラス) implements Parcelable すると自動生成で以下のようになる public class Hoge implements Parcelable { @Override public int describeContents() { // TODO Auto-generated met…
問題あり このソースでは 終了処理してからもデータの受け渡しができてしまう なぜかは不明。 従って、いまのところは暗黙的インテント方式で行う! 暗黙的インテント方式でも「同じ」!! 動作 明示的はexplicit 開始と終了 context.startService(intent)で…
暗黙的はimplicit 問題点は サービス開始->データ送信 これはOK で、サービス停止->データ送信 これも、動作してしまう・・ Manifest.xml service にintent-filterを記述する <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.efolab.t303" android:versionCode="1" android:versionName="1.0" > </manifest>
コールバックを行うにはコールバックインターフェースを使用する アクティビティの画面更新などサービスからアクティビティへの通知が必要な仕組みを提供するのがコールバックです。 流れ アクティビティからサービスをバインドする コールバックを登録する…
Main.java package com.efolab.t207; import java.lang.ref.WeakReference; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.util.Log; import android.widget.LinearLayout; public class Main ex…
public static Message obtain (Handler h, int what, Object obj) handler.sendMessage(Message.obtain(handler , 0 , value));
バインドによってサービスを起動するには AIDL(Android Interface Definition Language)というプロセス間で情報を交換の際の形式を 宣言し、定義しますが、実装の際には以下の手続きが必要です。 AIDLファイルを定義して作成(ファイル名の拡張子は.aidl) A…
別プロセスで起動する場合は サービスを起動した際に、プロセスを起動元とは異なる別のプロセスで実行したい場合には AndroidManifest.xmlのServiceタグに Android:process=":XXXXXXXXX"を記述します。 (XXXは任意) ^^^^^^^^^^^^ そうすれば DDMSの画面で複…
ReceiveActivityが複数起動してしまうのが困るな。 Main.java package com.efolab.s149; import android.app.Activity; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.location.Criter…
最後に取得した位置 //最後に取得した位置情報の取得 Location location = mLocatioManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); Main.java package com.efolab.s098; import android.content.Context; import android.location.Location; …
Main.java package com.efolab.s097; import java.util.List; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Point; import android.…
@SuppressWarnings("hiding") private static class MainHandler<Class> extends Handler { private final WeakReference<Class> klass; public MainHandler(Class mClass) { klass = new WeakReference<Class>(mClass); } @Override public void handleMessage(Message message) </class></class></class>…
使い方 インスタンス生成 open sql close instance SqlDbConnection conn = new SqlDbConnection(context); open ReadOnly conn.openReadOnly(); Writable conn.openWritable(); sql insert , update , delete conn.execSQL(sql); select Cursor c = conn.se…
context.getPackageName()
sdcardfile.getPath()
private boolean isTableExists() { boolean ret = false; String kakunin_sql = "select count(*) from sqlite_master where type='table' and name= '" + DbConnection.DBTABLE + "';"; Log.v("DbConnection", "kakunin_sql=" + kakunin_sql); db = dbHelp…
// 乱数の生成 private static int getIntRand(int min, int max) { int ret = (int) Math.floor(Math.random() * (max - min + 1)) + min; // Log.v("ret","min="+min+",max="+max+",ret="+ret); return ret; }
MMapViwe.java package com.efolab.t201; import android.content.Context; import android.content.Intent; import android.database.Cursor; import android.os.Bundle; import android.util.Log; import android.view.Gravity; import android.view.View;…
TIMESTAMPカラムのセット , update_date TIMESTAMP DEFAULT (DATETIME('now','localtime'))
getLineNumber public static String getLineNumber(Context context){ TelephonyManager telephonyManager = (TelephonyManager)context. getSystemService(Context.TELEPHONY_SERVICE); // 電話番号を取得します // android.permission.READ_PHONE_STATE …