- UID
- 1
- 积分
- 187773
- 回帖
- 0
- 贡献
-
- 金钱
-
- 注册时间
- 2012-7-14
- 最后登录
- 1970-1-1
- 在线时间
- 小时
TA的每日心情 | 怒 2024-11-4 03:26 |
---|
签到天数: 1214 天 连续签到: 1 天 [LV.10]茨木童子
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?创建账号
×
因为Java和Android调用API方式都是面向对象的,所以很多东西特别难记忆,我整理在这里,希望大家少走弯路,也方便自己查阅~
本文由Lance.Moe原创,多数内容属于主观见解,难免有错漏之处,欢迎跟帖回复指出我的错误,大家共同学习~
1.Toast弹出气泡的使用
- Toast.makeText(getApplicationContext(),"这是弹出的内容,推荐字符串使用R文件定义的",Toast.LENGTH_LONG).show();
复制代码 前两个参数没啥好说,第三个参数可以填Toast里提供的一些常数,LENGTH_LONG存活时间比较长,另外要注意的就是不要忘记show()出来~
2.短信发送
实现代码:
- String number = "10086"; //指定收件人号码
- String msg = "移动你好!"; //信息内容
- SmsManager smsmanager1 = SmsManager.getDefault(); //新建短信类
- ArrayList<String> msgArray = smsmanager1.divideMessage(msg); //自动拆分短信内容,分条发送,因为短信字数有上限,下面就用for挨个发送
- for (String text : msgArray) {
- smsmanager1.sendTextMessage(number,null,text,null,null);
- }
复制代码
另外,在AndroidManifest.xml内,要声明下发送短信的权限,否则程序是不能正常运行的:
- <uses-permission android:name="android.permission.SEND_SMS" />
复制代码
3.电话拨打
首先我们先声明拨打电话的权限:
- <uses-permission android:name="android.permission.CALL_PHONE" />
复制代码 实现代码:
- String mobileNum = "10086"; //指定播出号码
- Intent intent1 = new Intent(); //新建意图类
- intent1.setAction("android.intent.action.CALL"); //指定动作为电话
- //intent1.addCategory("android.intent.category.DEFAULT"); //这句不写默认就已经声明过DEFAULT
- intent1.setData(Uri.parse("tel:" + mobileNum)); //将号码填入意图
- startActivity(intent1); //执行意图
复制代码
4.文件读写(保存在内部储存)
文件保存的实现代码:
- String filename = "lancemoe.txt"; //指定文件
- String context = "安卓学习很艰辛~"; //指定文件内容
- FileOutputStream outStream = context1.openFileOutput(filename,Context.MODE_PRIVATE);
- outStream.write(context.getBytes());
- outStream.close();
复制代码 Context.MODE_PRIVATE这个参数可以换成其他的,比如MODE_APPEND是文件尾追加模式。
文件读取的实现代码:
- public String read(String filename) throws Exception {
- FileInputStream inStream = context1.openFileInput(filename); //打开文件流
- ByteArrayOutputStream outStream = new ByteArrayOutputStream(); //内存缓冲区
- byte[] buff1 = new byte[1024]; //缓冲区
- int len = 0;
- while((len = inStream.read(buff1)) != -1){
- outStream.write(buff1,0,len); //写入内存缓冲
- }
- byte[] data1 = outStream.toByteArray(); //读取内存缓冲
- inStream.close();
- return new String(data1); //转换为字符串
- }
复制代码
5.文件读写(保存在外部储存)
外部储存读写需要声明权限:
- <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
复制代码 文件保存的实现代码:
- String filename = "lancemoe.txt"; //指定文件
- String context = "安卓学习很艰辛~"; //指定文件内容
- File file = new File(Environment.getExternalStorageDirectory(),filename); //获取SD卡
- FileOutputStream outStream = new FileOutputStream(file);
- outStream.write(context.getBytes());
- outStream.close();
复制代码 读取同理~
Environment.getExternalStorageDirectory()是获取外部储存路径的API,最好不要写类似于"mnt/sdcard"这种绝对路径。
6.读取assets路径下的资源
此方法适用于AndroidStudio,注意assets文件夹应当与res同级。
- InputStream xml1 = this.getClass().getClassLoader().getResourceAsStream("assets/lance.xml");
复制代码
今天就先写这么多~下期再见
|
|