From 058a632725474011f89953c69384703e9d149f17 Mon Sep 17 00:00:00 2001 From: "Sheng Zhao (SPEECH)" Date: Mon, 23 Dec 2019 08:23:28 +0800 Subject: [PATCH] remove android samples --- Android/.gitignore | 18 -- Android/README.md | 56 ------ Android/Sample/.gitignore | 6 - Android/Sample/app/.gitignore | 1 - Android/Sample/app/build.gradle | 33 ---- Android/Sample/app/libs/speechsdk.aar | Bin 22473 -> 0 bytes Android/Sample/app/proguard-rules.pro | 17 -- .../Sample/app/src/main/AndroidManifest.xml | 21 --- .../com/microsoft/sdksample/MainActivity.java | 97 ----------- .../app/src/main/res/layout/activity_main.xml | 31 ---- .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 3418 -> 0 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 2206 -> 0 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 4842 -> 0 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 7718 -> 0 bytes .../app/src/main/res/values-w820dp/dimens.xml | 6 - .../Sample/app/src/main/res/values/dimens.xml | 5 - .../app/src/main/res/values/strings.xml | 17 -- .../Sample/app/src/main/res/values/styles.xml | 8 - Android/Sample/build.gradle | 19 -- Android/Sample/gradle.properties | 18 -- .../Sample/gradle/wrapper/gradle-wrapper.jar | Bin 49896 -> 0 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 - Android/Sample/gradlew | 164 ------------------ Android/Sample/gradlew.bat | 90 ---------- Android/Sample/settings.gradle | 1 - Android/Sample/speechsdk/.gitignore | 1 - Android/Sample/speechsdk/build.gradle | 29 ---- Android/Sample/speechsdk/proguard-rules.pro | 17 -- .../speechsdk/src/main/AndroidManifest.xml | 4 - .../speech/tts/AudioOutputFormat.java | 44 ----- .../microsoft/speech/tts/Authentication.java | 151 ---------------- .../com/microsoft/speech/tts/Synthesizer.java | 150 ---------------- .../speech/tts/TtsServiceClient.java | 119 ------------- .../java/com/microsoft/speech/tts/Voice.java | 58 ------- Android/SampleScreenshots/SampleRunning1.png | Bin 129345 -> 0 bytes 35 files changed, 1187 deletions(-) delete mode 100644 Android/.gitignore delete mode 100644 Android/README.md delete mode 100644 Android/Sample/.gitignore delete mode 100644 Android/Sample/app/.gitignore delete mode 100644 Android/Sample/app/build.gradle delete mode 100644 Android/Sample/app/libs/speechsdk.aar delete mode 100644 Android/Sample/app/proguard-rules.pro delete mode 100644 Android/Sample/app/src/main/AndroidManifest.xml delete mode 100644 Android/Sample/app/src/main/java/com/microsoft/sdksample/MainActivity.java delete mode 100644 Android/Sample/app/src/main/res/layout/activity_main.xml delete mode 100644 Android/Sample/app/src/main/res/mipmap-hdpi/ic_launcher.png delete mode 100644 Android/Sample/app/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100644 Android/Sample/app/src/main/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 Android/Sample/app/src/main/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 Android/Sample/app/src/main/res/values-w820dp/dimens.xml delete mode 100644 Android/Sample/app/src/main/res/values/dimens.xml delete mode 100644 Android/Sample/app/src/main/res/values/strings.xml delete mode 100644 Android/Sample/app/src/main/res/values/styles.xml delete mode 100644 Android/Sample/build.gradle delete mode 100644 Android/Sample/gradle.properties delete mode 100644 Android/Sample/gradle/wrapper/gradle-wrapper.jar delete mode 100644 Android/Sample/gradle/wrapper/gradle-wrapper.properties delete mode 100644 Android/Sample/gradlew delete mode 100644 Android/Sample/gradlew.bat delete mode 100644 Android/Sample/settings.gradle delete mode 100644 Android/Sample/speechsdk/.gitignore delete mode 100644 Android/Sample/speechsdk/build.gradle delete mode 100644 Android/Sample/speechsdk/proguard-rules.pro delete mode 100644 Android/Sample/speechsdk/src/main/AndroidManifest.xml delete mode 100644 Android/Sample/speechsdk/src/main/java/com/microsoft/speech/tts/AudioOutputFormat.java delete mode 100644 Android/Sample/speechsdk/src/main/java/com/microsoft/speech/tts/Authentication.java delete mode 100644 Android/Sample/speechsdk/src/main/java/com/microsoft/speech/tts/Synthesizer.java delete mode 100644 Android/Sample/speechsdk/src/main/java/com/microsoft/speech/tts/TtsServiceClient.java delete mode 100644 Android/Sample/speechsdk/src/main/java/com/microsoft/speech/tts/Voice.java delete mode 100644 Android/SampleScreenshots/SampleRunning1.png diff --git a/Android/.gitignore b/Android/.gitignore deleted file mode 100644 index fe99a322..00000000 --- a/Android/.gitignore +++ /dev/null @@ -1,18 +0,0 @@ -# Generated files -bin/ -gen/ -out/ -build/ - -# OS specific files -.DS_Store - -# IntelliJ / Android studio configuration files -.idea/ -*.iml - -# Gradle generated files -.gradle/ - -# Local config (e.g. sdk path) -local.properties \ No newline at end of file diff --git a/Android/README.md b/Android/README.md deleted file mode 100644 index 93efe24e..00000000 --- a/Android/README.md +++ /dev/null @@ -1,56 +0,0 @@ -The client library -================== - -The Text To Speech client library is a client library for Microsoft Cognitive Services (formerly Project Oxford) -Text To Speech REST APIs. - -The sample ----------- - -This sample is an Android application to demonstrate the use of Microsoft Cognitive Services (formerly Project Oxford) -Text To Speech API. - -Requirements ------------- - -* Android OS must be Android 4.1 or higher (API Level 16 or higher) -* The speech client library contains native code. To use this sample in an emulator, make sure that your build variant matches the architecture (x86 or arm) of your emulator. However, due to the need of audio, using a physical device is recommended. - -Build the sample ----------------- - -1. First, you must obtain a Speech API subscription key by following instructions in [Microsoft Cognitive Services subscription](https://www.microsoft.com/cognitive-services/en-us/sign-up). - -1. Start Android Studio and open project by `File > Import Project`. Choose subfolder `Sample` in the `Android` folder. - -1. In Android Studio -\> `Project` panel -\> `Android` view, open file `app/res/values/strings.xml`, and find the line `Please_add_the_subscription_key_here;`. Replace the `Please_add_the_subscription_key_here` value with your subscription key string from the first step. If you cannot find the file `string.xml`, it is in folder `Sample\app\src\main\res\values\string.xml`. - -1. There are two more values to modify. The endpoint of authentication or synthesis must match the subscription key you use. Check them out respectively. Refer to HTTP samples if necessary. - * `Sample/speechsdk/src/main/java/com/microsoft/speech/tts/Authentication.java` for `AccessTokenUri = "https://api.cognitive.microsoft.com/sts/v1.0/issueToken";` - * `Sample/speechsdk/src/main/java/com/microsoft/speech/tts/TtsServiceClient.java` for `m_serviceUri = "https://speech.platform.bing.com/synthesize";` - -1. In Android Studio, select menu `Build > Make Project` to build the sample, and `Run` to launch this sample app. - -Run the sample --------------- - -In Android Studio, select menu "Run", and "Run app" to launch this sample app. - -![Sample Running](SampleScreenshots/SampleRunning1.png) - -Contributing ------------- - -We welcome contributions and are always looking for new SDKs, input, and suggestions. Feel free to file issues on the repo and we'll address them as we can. You can also learn more about how you can help on the [Contribution Rules & Guidelines](/CONTRIBUTING.md). - -For questions, feedback, or suggestions about Microsoft Cognitive Services, feel free to reach out to us directly. - -* [Cognitive Services UserVoice Forum](https://cognitive.uservoice.com) - -License -------- - -All Microsoft Cognitive Services SDKs and samples are licensed with the MIT License. For more details, see -[LICENSE](). - -Sample images are licensed separately, please refer to [LICENSE-IMAGE](/LICENSE-IMAGE.md). diff --git a/Android/Sample/.gitignore b/Android/Sample/.gitignore deleted file mode 100644 index afbdab33..00000000 --- a/Android/Sample/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -.gradle -/local.properties -/.idea/workspace.xml -/.idea/libraries -.DS_Store -/build diff --git a/Android/Sample/app/.gitignore b/Android/Sample/app/.gitignore deleted file mode 100644 index 796b96d1..00000000 --- a/Android/Sample/app/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/Android/Sample/app/build.gradle b/Android/Sample/app/build.gradle deleted file mode 100644 index 15f53d82..00000000 --- a/Android/Sample/app/build.gradle +++ /dev/null @@ -1,33 +0,0 @@ -apply plugin: 'com.android.application' - -android { - compileSdkVersion 21 - buildToolsVersion '21.1.2' - - defaultConfig { - applicationId "com.microsoft.sdksample" - minSdkVersion 15 - targetSdkVersion 22 - versionCode 1 - versionName "1.0" - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } -} - -repositories { - flatDir { - dirs 'libs' - } -} - -dependencies { - releaseCompile(name: 'speechsdk', ext: 'aar') - debugCompile project(path: ':speechsdk') - - compile 'com.android.support:appcompat-v7:22.1.0' -} diff --git a/Android/Sample/app/libs/speechsdk.aar b/Android/Sample/app/libs/speechsdk.aar deleted file mode 100644 index 7a4539bb3091d11b7ca003bacce8cc773629cdce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22473 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%0DoEy(y*n8{-(^4~&1?a_}3(uXkOXe?xpi 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 Svwf_INb5oX diff --git a/Android/Sample/app/proguard-rules.pro b/Android/Sample/app/proguard-rules.pro deleted file mode 100644 index c931b1e2..00000000 --- a/Android/Sample/app/proguard-rules.pro +++ /dev/null @@ -1,17 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in C:\Users\jinzl\AppData\Local\Android\sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} diff --git a/Android/Sample/app/src/main/AndroidManifest.xml b/Android/Sample/app/src/main/AndroidManifest.xml deleted file mode 100644 index 34020d1b..00000000 --- a/Android/Sample/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - diff --git a/Android/Sample/app/src/main/java/com/microsoft/sdksample/MainActivity.java b/Android/Sample/app/src/main/java/com/microsoft/sdksample/MainActivity.java deleted file mode 100644 index 915ee63b..00000000 --- a/Android/Sample/app/src/main/java/com/microsoft/sdksample/MainActivity.java +++ /dev/null @@ -1,97 +0,0 @@ -// -// Copyright (c) Microsoft. All rights reserved. -// Licensed under the MIT license. -// -// Microsoft Cognitive Services (formerly Project Oxford): https://www.microsoft.com/cognitive-services -// -// Microsoft Cognitive Services (formerly Project Oxford) GitHub: -// https://github.com/Microsoft/Cognitive-Speech-TTS -// -// Copyright (c) Microsoft Corporation -// All rights reserved. -// -// MIT License: -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED ""AS IS"", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// - -package com.microsoft.sdksample; - -import android.app.AlertDialog; -import android.os.Bundle; -import android.support.v7.app.ActionBarActivity; -import android.view.View; -import android.widget.Toast; - -import com.microsoft.speech.tts.Synthesizer; -import com.microsoft.speech.tts.Voice; - -public class MainActivity extends ActionBarActivity { - // Note: Sign up at http://www.projectoxford.ai for the client credentials. - private Synthesizer m_syn; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); - - if (getString(R.string.api_key).startsWith("Please")) { - new AlertDialog.Builder(this) - .setTitle(getString(R.string.add_subscription_key_tip_title)) - .setMessage(getString(R.string.add_subscription_key_tip)) - .setCancelable(false) - .show(); - } else { - - if (m_syn == null) { - // Create Text To Speech Synthesizer. - m_syn = new Synthesizer(getString(R.string.api_key)); - } - - Toast.makeText(this, "If the wave is not played, please see the log for more information.", Toast.LENGTH_LONG).show(); - - m_syn.SetServiceStrategy(Synthesizer.ServiceStrategy.AlwaysService); - - Voice v = new Voice("en-US", "Microsoft Server Speech Text to Speech Voice (en-US, ZiraRUS)", Voice.Gender.Female, true); - //Voice v = new Voice("zh-CN", "Microsoft Server Speech Text to Speech Voice (zh-CN, HuihuiRUS)", Voice.Gender.Female, true); - m_syn.SetVoice(v, null); - - // Use a string for speech. - m_syn.SpeakToAudio(getString(R.string.tts_text)); - - // Use SSML for speech. - String text = "You can also use SSML markup for text to speech."; - m_syn.SpeakSSMLToAudio(text); - - findViewById(R.id.stop_btn).setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - m_syn.stopSound(); - } - }); - - findViewById(R.id.play_btn).setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - m_syn.SpeakToAudio(getString(R.string.tts_text)); - } - }); - } - } -} diff --git a/Android/Sample/app/src/main/res/layout/activity_main.xml b/Android/Sample/app/src/main/res/layout/activity_main.xml deleted file mode 100644 index feb91410..00000000 --- a/Android/Sample/app/src/main/res/layout/activity_main.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - -