`
newbin
  • 浏览: 38440 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android api code学习--第一个比较完整的应用

阅读更多

最近学习android写了一个算的上是应用的app,功能很简单,利用google 提供的translate服务将输入的字符翻译成想要的语言(比如英汉翻译)和http://translate.google.cn/差不多(这里我直接应用了google-api-translate-java-0.92.jar这个jar包,操作很简单,方便,嘿嘿),还有利用android的TextToSpeech进行speech翻译的结果,由于android的TextToSpeech只支持English,French,German,Italian,Spanish,所以只有翻译的目标语言是上面的语种时才进行speech;还有功能就是将翻译的结果能以email/msg的形式发送消息给别人。写这个程序的重点在于学习利用AIDL进行process间的信息传递(关于aidl的知识google下可以找到很多,呵呵)

定义activity访问translate service的代码段:

private ServiceConnection mTranslateConn = new ServiceConnection() {
        public void onServiceConnected(ComponentName name, IBinder service) {
            mTranslateService = ITranslate.Stub.asInterface(service);
            if (mTranslateService != null) {
                mTranslateButton.setEnabled(true);
            } else {
                mTranslateButton.setEnabled(false);
                mStatusView.setText(getString(R.string.error));
                log("Unable to acquire TranslateService");
            }
        }

        public void onServiceDisconnected(ComponentName name) {
            mTranslateButton.setEnabled(false);
            mTranslateService = null;
        }
    };

 

google translate service的应用:

GoogleAPI
				.setHttpReferrer("http://code.google.com/p/google-api-translate-java/");
		String translatedText = Translate.execute(text, Language
				.fromString(from), Language.fromString(to));

 TextToSpeech的应用:

	@Override
	public void onInit(int status) {
		// TODO Auto-generated method stub
		if (status == TextToSpeech.SUCCESS) {
			Language to = (Language) mToButton.getTag();
	        String toShortName = to.getShortName();
	        
            int result = tts.setLanguage(new Locale(toShortName));
            
            if (result == TextToSpeech.LANG_MISSING_DATA ||
                result == TextToSpeech.LANG_NOT_SUPPORTED) {
               
                Log.e(TAG, "Language is not available.");
            } else {
//                sayText();
            }
        } else {
            // Initialization failed.
            Log.e(TAG, "Could not initialize TextToSpeech.");
        }
	}
	
	private void sayText() {
		
		String sayInfo = mToEditText.getText().toString();
		Language to = (Language) mToButton.getTag();
		String toShortName = to.getShortName();
		tts.setLanguage(new Locale(toShortName));
		tts.speak(sayInfo, TextToSpeech.QUEUE_FLUSH,null);
	}

 

最后send msg的应用:

private void sendEmail() {
		Intent intent = new Intent(Intent.ACTION_SEND);
		intent.setType("text/plain");
		intent.putExtra(Intent.EXTRA_TEXT, mToEditText.getText());
		startActivity(Intent.createChooser(intent, null));
	}

 恩,很简单吧,呵呵,不过还是很有成就感的说,嘿嘿。

贴些图片吧,呵呵:

 

 

 

  • 大小: 51.2 KB
  • 大小: 11.1 KB
  • 大小: 14.3 KB
  • 大小: 11.5 KB
  • 大小: 14.6 KB
  • 大小: 12.7 KB
  • 大小: 11.5 KB
  • 大小: 14.6 KB
  • 大小: 21.1 KB
  • 大小: 21 KB
  • 大小: 17.2 KB
  • 大小: 11.4 KB
  • 大小: 27.6 KB
  • 大小: 14.4 KB
1
7
分享到:
评论
1 楼 CasparLuk 2012-11-11  
請問是怎樣做的?
我完成不明白怎樣做?

相关推荐

    android 4.4 source code 源代码 sources-20_r01 api20

    首先,标题中的"sources-20_r01"表明这是Android 4.4 KitKat的某个修订版本(revision)的源代码,其中"r01"可能表示此版本是该版本的第一次修订。"api20"则明确指出这是针对Android API级别20的源代码,这个级别...

    Android高级应用源码-第三方登录(QQ空间+新浪微博).zip

    本资源"Android高级应用源码-第三方登录(QQ空间+新浪微博).zip"提供了一个实现这一功能的示例代码,对于学习和理解如何在Android应用中实现第三方登录接口具有很高的参考价值。 首先,我们需要了解第三方登录的基本...

    新版Android开发教程.rar

    Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。 Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 ...

    android map api 介绍

    - **第一步**:同样需要获取AutoNavi API密钥。 - **第二步**:在代码中替换所有与Google Maps相关的引用和类名,例如将`com.google.android.maps`替换为`com.autonavi.mapapi`。 - **第三步**:更新所有XML布局文件...

    android source code -email

    Android提供了Email服务框架,这是一个基于ContentProvider的系统服务,允许第三方应用通过标准的Android API来访问和操作邮件。这个框架包括了邮件账户管理、邮件同步、邮件存储等多个组件。 2. **AccountManager...

    Android代码-api-boot

    ApiBoot是一款基础的接口服务框架的整合,开箱即用,对于接口服务的开发者而言可以很大的提高开发效率,之前在SpringBoot系列文章内也有很多同学让我出一个整合的示例,这个也可以当做结合我编写的文章的示例来看,...

    Android应用源码之youmi-code.zip

    通过对"youmi-code"的源码分析,开发者不仅可以了解一个实际应用的架构,还能掌握与Youmi SDK的集成技巧,进一步提升自己的Android开发能力。此外,这个过程也有助于开发者了解广告行业的运作模式,为今后的项目提供...

    Android高级应用源码-zxing 生成二维码名片.rar

    本资源"Android高级应用源码-zxing 生成二维码名片"提供了一个完整的示例,展示了如何利用ZXing(Zebra Crossing)库在Android应用程序中创建二维码名片。ZXing是一个开源的、跨平台的条形码和二维码读取与生成库。 ...

    Android高级应用源码-android 二维码 识别基本代码.zip

    这个"Android高级应用源码-android 二维码 识别基本代码.zip"压缩包包含了一个基本的二维码识别实现,适合开发者学习和参考。下面我们将深入探讨二维码识别的核心技术和在Android中的实现。 首先,二维码(Quick ...

    Android高级编程--源代码

    2.1.2 创建第一个Android活动 22 2.1.3 Android应用程序的类型 27 2.2 面向移动设备的开发 28 2.2.1 关于硬件设计的考虑事项 28 2.2.2 考虑用户环境 31 2.2.3 Android开发 32 2.3 To-Do List示例 35 2.4 ...

    android-15 platforms

    标题“android-15 platforms”指的是Android操作系统的第15个版本,也就是API级别15,对应的Android版本是冰淇淋三明治(Ice Cream Sandwich,简称ICS)。这个版本的Android是在2011年10月发布,是Android系统发展中...

    Android高级应用源码-android验证码的整个实现过程和所有的代码,功能比较的简单,大家可以好好参考学习一下.zip

    这个"Android高级应用源码-android验证码的整个实现过程和所有的代码"提供了学习验证码实现的一个基础示例。下面我们将深入探讨验证码在Android应用中的实现方式,以及可能涉及的关键技术点。 1. **验证码生成**: ...

    First Code for Android

    在Android开发中,"第一行代码"通常指的是创建一个简单的Hello World应用。这是每个开发者入门时都会经历的步骤。以下是一些相关的Android开发知识点: 1. **环境搭建**:首先,开发者需要安装Java Development Kit...

    二、Android开发环境配置-Android开发与实践

    总的来说,配置Android开发环境是进入Android开发世界的第一步,熟练掌握这些工具的使用,能为开发者提供一个高效且稳定的开发环境,从而更好地进行Android应用的开发和调试。通过不断地实践和学习,开发者可以逐步...

    Beginning Android 4 Source Code

    了解如何配置Eclipse的Android开发环境,包括安装ADT(Android Development Tools)插件,设置SDK路径,创建AVD(Android Virtual Device)等,是学习Android开发的第一步。 3. **Java编程基础**:Android应用主要...

    android实现解析Google地图API json数据

    以下将详细阐述如何在Android应用中实现这一功能。 首先,我们需要在Android项目中引入Google Play服务库,这是使用Google Maps API的基础。在`build.gradle`文件的dependencies部分添加以下依赖: ```groovy ...

    Android-Code-Template-or-Code-Snippet-

    例如,输入`logd`后按Tab键,会自动生成一个完整的Log.d()日志打印语句。 4. **第三方工具和扩展**: - 除了Android Studio自带的功能,还有许多第三方插件和扩展提供额外的代码模板和片段库,如`GsonFormat`用于...

    code-source-adkar.rar_APP_android

    从标题“code-source-adkar.rar_APP_android”我们可以推断这是一个关于Android APP的源代码压缩包,可能包含了“adkar”项目的全部代码资源。描述中的“android app for adkar”进一步确认了这是一款面向Android...

    安卓Android源码——PushTalk-master.zip

    【描述】: 这个源码项目"PushTalk-master"提供了一个完整的实例,展示了如何在Android平台上构建一个能够处理推送通知的聊天应用。开发者可以借此学习到如何集成第三方推送服务(如Google Firebase Cloud Messaging,...

Global site tag (gtag.js) - Google Analytics