2012年7月10日火曜日

Screen on

I try screen on. I would like to keep screen for development.

If I keep screen on
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

source code is here.




If don't keep screen on
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
source code is here.
Please suggest your android issue by twitter or mail, I would try to clear up your issue.

2012年6月3日日曜日

Java File I/O

Java Info

FileWriter, write text.
FileReader, read text

FileOutputStream, write binary

FileInputStream, read binary.



2012年4月29日日曜日

Record Web Start Time

I try Date Class. I create app of "record web start time" to check Date Class.
The app have the time of pushing "Web Start" button.

I get now time.
SimpleDateFormat  sdf = new SimpleDateFormat("yyyy' /'MM'/'dd'/ 'HH':'mm':'ss':'");  
Date  date = new Date();  
I get previous time of pushing "Web Start" button. I use SharedPreferences Class.
SharedPreferences pref = getSharedPreferences("pref", MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE);
String votetime = pref.getString("votetime", sdf.format(date));
I preview previous time.
TextView prevvotetime = (TextView)findViewById(R.id.text1);
prevvotetime.setText(votetime);
If pushing "Web Start" button, I update time.
set listener.
Button votebutton = (Button)findViewById(R.id.button1);
votebutton.setOnClickListener(new View.OnClickListener() {

 @Override
 public void onClick(View v) {
 }
});
I update time and save time to SharedPreferences .
SimpleDateFormat  sdf = new SimpleDateFormat("yyyy' /'MM'/'dd'/ 'HH':'mm':'ss':'");  
Date  date = new Date(); 

SharedPreferences pref = getSharedPreferences("pref", MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE);
Editor e = pref.edit();
e.putString("votetime", sdf.format(date));
e.commit();
source code is here.
apk is here.
Please suggest your android issue by twitter or mail, I would try to clear up your issue.

2012年4月22日日曜日

Web Browser

I try WebView class.

donwload apk.



set setWebViewClient for no intent WEB BROWSER.
WebView w = (WebView)findViewById(R.id.webView1);
w.setWebViewClient(new WebViewClient());
enable javascript.
w.getSettings().setJavaScriptEnabled(true);
add Zoom Control
w.getSettings().setBuiltInZoomControls(true);
If app finish to load web page, call callback. I register callback.
w.setWebViewClient(new webclient());
and callback function by WebViewClient. If call onPageFinish, app update url text and app focus web page.
public class webclient extends WebViewClient {
    @Override
    public void onPageFinished(WebView view, String url) {
        setProgressBarIndeterminateVisibility(false);
        WebView w = (WebView)findViewById(R.id.webView1);
  TextView t = (TextView)findViewById(R.id.editText1);
  String u = w.getUrl();
  t.setText(u);
  w.requestFocus();
    }
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        setProgressBarIndeterminateVisibility(true);
    } 
}
If user push W button, app hide ime.
Button b = (Button)findViewById(R.id.button1);
b.setOnClickListener( new View.OnClickListener() {
 @Override
 public void onClick(View v) {
        EditText e = (EditText)findViewById(R.id.editText1);
        if (e.isFocused()) {
         WebView w = (WebView)findViewById(R.id.webView1);
  mI.hideSoftInputFromWindow(w.getWindowToken(), 0);
If user push W button, app jump url inputted by user.
If input text is not ".", app think text is search word.
If input text is not "http://", app add "http://" to url.
TextView t = (TextView)findViewById(R.id.editText1);
if (!t.getText().toString().matches(".")){
 w.loadUrl("http://www.google.co.jp/search?q=" + t.getText().toString());
} else if (!t.getText().toString().startsWith("http://")) {
 w.loadUrl("http://" + t.getText().toString());
} else {
 w.loadUrl(t.getText().toString());
}
If user input url text, app foucs text all.
EditText e = (EditText)findViewById(R.id.editText1);
e.setOnFocusChangeListener(new View.OnFocusChangeListener() {
 
 @Override
 public void onFocusChange(View v, boolean hasFocus) {
  if (hasFocus == true) {
         EditText e = (EditText)findViewById(R.id.editText1);
   e.selectAll();
  }
 }
});
If user push back button, app go back's web page.
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
 if (keyCode == KeyEvent.KEYCODE_BACK) {
        WebView w = (WebView)findViewById(R.id.webView1);
        w.goBack();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}
source code is here. Please suggest your android issue by twitter or mail, I would try to clear up your issue.

2012年4月20日金曜日

analysis mp4 file

I did mediaRecorder and ParcelFileDescriptor class. and I analysis transfered file.

it is the blog.

I found description for ISO 14496-12 "ISO base media file format".
but analysis is difficult.

it is result.
xls file

2012年4月17日火曜日

ScaleImage

I did to scale Image on there.
But it is not scale on center, it is to scale on position( 0, 0).

I try to scale on center.

default position is (0. 0).
first, position move center at image
float mx = canvas.getWidth();
float my = canvas.getHeight();
canvas.translate(mx/2, my/2);
second, scale it.
canvas.scale(mScaleFactor, mScaleFactor);
final, take back.
canvas.translate(-(mx/2), -(my/2));
it is cool. source code is here. Please suggest your android issue by twitter or mail, I would try to clear up your issue.

2012年4月16日月曜日

move image


I try to move image in android.
I prepare the image.
int resid = context.getResources().getIdentifier("s066", "drawable", context.getPackageName());
mImage = context.getResources().getDrawable(resid);
mImage.setBounds(0, 0, mImage.getIntrinsicWidth(), mImage.getIntrinsicHeight() );
I prepare GestureDetector for getting onScroll event.
mGestureDetector = new GestureDetector(context, this);
I get touch event.
mGestureDetector.onTouchEvent(ev);
onScroll get moving position and call invalidate() for onDrow.
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
  float distanceY) {
 Log.d("book", "distanceX=" + distanceX + "  distanceY=" + distanceY);
 mTranslateX -= distanceX;
 mTranslateY -=distanceY;
 invalidate();
 
 return false;
}
onDrow.
@Override
public void onDraw(Canvas canvas) {
 super.onDraw(canvas);
 
 canvas.save();
 canvas.translate(mTranslateX, mTranslateY);
 mImage.draw(canvas);
 
 canvas.restore();
}
source code is here. Please suggest your android issue by twitter or mail, I would try to clear up your issue.