您的位置:首页 > 其它

写了一个对自己很实用的安卓软件

2014-05-19 23:39 274 查看
这个软件的功能是快速打电话和快速发短信。或许你会觉得这个软件太鸡肋,但对于我这种常联系的人很少的陈戌源来说,这个软件还是蛮有用的。这基本算是我开发的第一个“能用”的安卓程序,主要目的只是为了让自己大概了解安卓开发的流程,为接下来的学习做铺垫,所以软件做得还是比较挫的,大家看过笑笑就好……

首先:三个activity:

package com.example.fastcall;

import com.example.fastcall.util.SystemUiHider;

import android.R.layout;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;
import android.content.Intent;
import android.drm.DrmStore.Action;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.widget.Button;
import android.widget.ImageView;

public class FullscreenActivity extends Activity implements OnTouchListener {

private static final boolean AUTO_HIDE = true;

private static final int AUTO_HIDE_DELAY_MILLIS = 3000;

private static final boolean TOGGLE_ON_CLICK = true;

private static final int HIDER_FLAGS = SystemUiHider.FLAG_HIDE_NAVIGATION;

private SystemUiHider mSystemUiHider;
private Button button_exit;
private Button button_chenmo;
private Button button_father;
private Button button_lijie;
private Button button_ganweiqi;
private Button button_litie;
private Button button_wuhonghua;
private Button button_xiasu;
private Button button_1008611;
private Button button_zhukunling;
private ImageView image;

private int downx,downy,upx,upy;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.activity_fullscreen);

final View controlsView = findViewById(R.id.fullscreen_content_controls);
//final View contentView = findViewById(R.id.fullscreen_content);
button_exit = (Button) findViewById(R.id.dummy_button);
button_chenmo = (Button) findViewById(R.id.button_chenmo);
button_father = (Button) findViewById(R.id.button_father);
button_lijie = (Button) findViewById(R.id.button_lijie);
button_ganweiqi = (Button) findViewById(R.id.button_ganweiqi);
button_litie = (Button) findViewById(R.id.button_litie);
button_wuhonghua = (Button) findViewById(R.id.button_wuhonghua);
button_1008611 = (Button) findViewById(R.id.button_1008611);
button_xiasu = (Button) findViewById(R.id.button_xiasu);
button_zhukunling = (Button) findViewById(R.id.button_zhukunling);
image=(ImageView)findViewById(R.id.image);
image.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
downx=(int)event.getX();
break;
case MotionEvent.ACTION_MOVE:
upx=(int)event.getX();
if(downx-upx>100){
//finish();
Intent intent = new Intent();
//intent.putExtra("testIntent", "123");
intent.setClass(FullscreenActivity.this, activity2.class);
startActivity(intent);
FullscreenActivity.this.finish();
break;}

}
return true;
}
});

button_exit.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
ActivityManager activitymanager=(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
activitymanager.restartPackage(getPackageName());
android.os.Process.killProcess(android.os.Process.myPid());

//FullscreenActivity.this.finish();

}
});

button_chenmo.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:18271682152"));

startActivity(cal);
}
});
button_father.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:13986615436"));
startActivity(cal);
}
});
button_lijie.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:13135929759"));
startActivity(cal);
}
});
button_ganweiqi.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:18682303058"));
startActivity(cal);
}
});
button_litie.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:18271683092"));
startActivity(cal);
}
});
button_wuhonghua.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:15172050762"));
startActivity(cal);
}
});
button_zhukunling.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:18271652311"));
startActivity(cal);
}
});
button_xiasu.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:15374537418"));
startActivity(cal);
}
});
button_1008611.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent cal = new Intent();
cal.setAction(Intent.ACTION_CALL);
cal.setData(Uri.parse("tel:1008611"));
startActivity(cal);
}
});

}

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub

return true;
}

}


package com.example.fastcall;

import android.R.layout;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;
import android.content.Intent;
import android.drm.DrmStore.Action;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.widget.Button;
import android.widget.ImageView;

public class activity2 extends Activity {

private ImageView image2;
private Button button_chenmo,button_father,button_feiji;
private Button exit_button;
private int downx,upx;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity2_out);
image2=(ImageView)findViewById(R.id.image2);
exit_button=(Button)findViewById(R.id.exit_button);
button_chenmo=(Button)findViewById(R.id.button_chenmo);
button_father=(Button)findViewById(R.id.button_father);
button_feiji=(Button)findViewById(R.id.button_feiji);

button_chenmo.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent=new Intent();
intent.putExtra("messagenum", "18271682152");
intent.setClass(activity2.this, activity3.class);
activity2.this.startActivity(intent);
}
});
button_father.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent=new Intent();
intent.putExtra("messagenum", "13986615436");
intent.setClass(activity2.this, activity3.class);
activity2.this.startActivity(intent);
}
});
button_feiji.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent=new Intent();
intent.putExtra("messagenum", "15172365787");
intent.setClass(activity2.this, activity3.class);
activity2.this.startActivity(intent);
}
});

image2.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub

switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
downx=(int)event.getX();
break;
case MotionEvent.ACTION_MOVE:
upx=(int)event.getX();
if(downx-upx<-100){
//finish();
Intent intent = new Intent();
intent.putExtra("testIntent", "123");
intent.setClass(activity2.this, FullscreenActivity.class);
intent.setFlags(intent.FLAG_ACTIVITY_CLEAR_TOP);
activity2.this.startActivity(intent);
overridePendingTransition(android.R.anim.slide_in_left,android.R.anim.slide_out_right);
activity2.this.finish();
break;}

}
return true;

}
});

exit_button.setOnClickListener(new OnClickListener() {

@SuppressWarnings("deprecation")
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
ActivityManager activitymanager=(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
activitymanager.restartPackage(getPackageName());
android.os.Process.killProcess(android.os.Process.myPid());
finish();
}
});

}

}


package com.example.fastcall;

import android.R.layout;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;
import android.content.Intent;
import android.drm.DrmStore.Action;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.text.Editable;
import android.text.GetChars;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;

public class activity3 extends Activity{

private Button button_send;
private EditText edit_text;

public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity3);
Intent recive=getIntent();
final String num=recive.getStringExtra("messagenum");
edit_text=(EditText)findViewById(R.id.edit);
button_send=(Button)findViewById(R.id.button_send);
button_send.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent=new Intent();
intent.setAction(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("smsto:"+num));
intent.putExtra("sms_body", edit_text.getText().toString());
startActivity(intent);
}
});
}

}


三个布局文件:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/back3"
android:orientation="vertical"
android:visibility="visible" >

<Button
android:id="@+id/button_del"
android:layout_width="1dp"
android:layout_height="80dp"
android:text="" />

<Button
android:id="@+id/button_chenmo"
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@drawable/button_press"
android:text="Call:陈沫"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_father"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:爸爸"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_lijie"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:李杰"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_litie"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:李贴"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_ganweiqi"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:甘伟奇"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_xiasu"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:夏肃"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_wuhonghua"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:伍红华"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_zhukunling"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:朱坤林"
android:textColor="#CB4B04" />

<Button
android:id="@+id/button_1008611"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/button_press"
android:text="Call:1008611"
android:textColor="#CB4B04" />

<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@drawable/zuohua"
android:text="" />

<LinearLayout
android:id="@+id/fullscreen_content_controls"
style="?buttonBarStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:background="@color/black_btn"
android:orientation="horizontal" >

<Button
android:id="@+id/dummy_button"
style="?buttonBarButtonStyle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/dummy_button" />
</LinearLayout>
</LinearLayout>

</FrameLayout>


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/haimianbaobao"
android:orientation="vertical" >

<Button
android:id="@+id/button_chenmo"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_marginTop="140dp"
android:background="@drawable/mbutton_press"
android:textColor="#CB4B04"
android:text="Message:陈沫" />

<Button
android:id="@+id/button_father"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/mbutton_press"
android:textColor="#CB4B04"
android:text="Message:爸爸" />

<Button
android:id="@+id/button_feiji"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/mbutton_press"
android:textColor="#CB4B04"
android:text="Message:飞机" />

<ImageView
android:id="@+id/image2"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="240dp"
android:background="@drawable/youhua"
android:text="" />
<LinearLayout
android:id="@+id/fullscreen_content_controls"
style="?buttonBarStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:background="@color/black_btn"

android:orientation="horizontal" >

<Button
android:id="@+id/exit_button"
style="?buttonBarButtonStyle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_weight="1"
android:text="@string/dummy_button" />

</LinearLayout>

</LinearLayout>


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/xiaohuangren1"
android:orientation="vertical" >

<EditText
android:id="@+id/edit"
android:layout_width="fill_parent"
android:layout_height="200dp"
android:layout_alignParentLeft="true"
android:background="@drawable/biankuan"
android:gravity="top"
android:text=""
android:textColor="#000000"
android:layout_below="@+id/textview" >

</EditText>

<Button
android:id="@+id/button_send"
android:layout_below="@+id/edit"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:background="@drawable/send"
android:textColor="#CB4B04"
android:text="发送"
/>

<TextView
android:id="@+id/textview"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="80dp"
android:gravity="center"
android:textColor="#CB4B04"
android:text="编辑信息:" />

</RelativeLayout>


两个按钮按下改变的xml代码:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/bt" android:state_pressed="false"/>
<item android:drawable="@drawable/bt_press" android:state_pressed="true"/>

</selector>


<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/message_nomal" android:state_pressed="false"/>
<item android:drawable="@drawable/message_press" android:state_pressed="true"/>

</selector>


最后是mainfirst.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.fastcall"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.fastcall.FullscreenActivity"
android:launchMode="singleTop"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:theme="@style/FullscreenTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="activity2"
android:theme="@style/FullscreenTheme" >

</activity>
<activity android:name="activity3"
android:theme="@style/FullscreenTheme" >

</activity>
</application>

  <uses-permission android:name="android.permission.CALL_PHONE" ></uses-permission>
<uses-permission android:name="android.permission.RESTART_PACKAGES"> </uses-permission>
</manifest>







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  安卓 软件
相关文章推荐