diff --git a/.github/workflows/gradle6.yml b/.github/workflows/gradle6.yml index 6d56cb1b54..8162039edc 100644 --- a/.github/workflows/gradle6.yml +++ b/.github/workflows/gradle6.yml @@ -7,40 +7,51 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - java: ['8', '11'] + os: [ubuntu-latest, macos-latest] + java: ['11'] distribution: ['temurin'] gradle: ['6.7.1'] fail-fast: false name: JAVA ${{ matrix.java }} OS ${{ matrix.os }} Gradle ${{ matrix.gradle }} steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 - - run: sed -i -e "s|7.2.0|4.2.2|g" build.gradle + - name: Downgrade Android plugin from 7.4.1 to 4.2.0 + run: sed -i -e "s|7.4.1|4.2.0|g" build.gradle + + - name: Downgrade DistributionUrl from Gradle 7.5.1 to Gradle 6.7.1 + run: sed -i -e "s|7.5.1|6.7.1|g" gradle/wrapper/gradle-wrapper.properties - name: Set up JDK - uses: actions/setup-java@v2 + uses: actions/setup-java@v3 with: distribution: ${{ matrix.distribution }} java-version: ${{ matrix.java }} - name: Setup Android SDK - uses: android-actions/setup-android@v2 + uses: android-actions/setup-android@v2.0.10 + + - name: Install build-tools 33.0.2, platformtools and platform android-33 + run: sdkmanager --install "build-tools;33.0.2" "platform-tools" "platforms;android-33" + + - name: Fix build tools 33.0.2 issue + run: | + ln -s ${ANDROID_HOME}/build-tools/33.0.2/d8 ${ANDROID_HOME}/build-tools/33.0.2/dx + ln -s ${ANDROID_HOME}/build-tools/33.0.2/lib/d8.jar ${ANDROID_HOME}/build-tools/33.0.2/lib/dx.jar - name: Build with Gradle run: | ./gradlew wrapper --gradle-version=${{ matrix.gradle }} - ./gradlew wrapper --gradle-version=${{ matrix.gradle }} - ./gradlew clean build + ./gradlew clean build --stacktrace - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: groestlcoin-wallet-JAVA${{ matrix.java }}-${{ matrix.os }}-${{ matrix.gradle }} path: | wallet/build/outputs/apk/ - name: Download artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: groestlcoin-wallet-JAVA${{ matrix.java }}-${{ matrix.os }}-${{ matrix.gradle }} diff --git a/.github/workflows/gradle7.yml b/.github/workflows/gradle7.yml index 81f2e9df1f..e4c40c02fc 100644 --- a/.github/workflows/gradle7.yml +++ b/.github/workflows/gradle7.yml @@ -10,37 +10,37 @@ jobs: os: [ubuntu-latest, macos-latest, windows-latest] java: ['11', '17'] distribution: ['temurin'] - gradle: ['7.4.2'] + gradle: ['7.5.1'] fail-fast: false name: JAVA ${{ matrix.java }} OS ${{ matrix.os }} Gradle ${{ matrix.gradle }} steps: - - uses: actions/checkout@v1 - - - run: sed -i -e "s|7.2.0|7.2.1|g" build.gradle + - uses: actions/checkout@v3 - name: Set up JDK - uses: actions/setup-java@v2 + uses: actions/setup-java@v3 with: distribution: ${{ matrix.distribution }} java-version: ${{ matrix.java }} - name: Setup Android SDK - uses: android-actions/setup-android@v2 + uses: android-actions/setup-android@v2.0.10 + + - name: Install build-tools 33.0.2, platformtools and platform android-33 + run: sdkmanager --install "build-tools;33.0.2" "platform-tools" "platforms;android-33" - name: Build with Gradle run: | ./gradlew wrapper --gradle-version=${{ matrix.gradle }} - ./gradlew wrapper --gradle-version=${{ matrix.gradle }} - ./gradlew clean build + ./gradlew clean build --stacktrace - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: groestlcoin-wallet-JAVA${{ matrix.java }}-${{ matrix.os }}-${{ matrix.gradle }} path: | wallet/build/outputs/apk/ - name: Download artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: groestlcoin-wallet-JAVA${{ matrix.java }}-${{ matrix.os }}-${{ matrix.gradle }} diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index aba8e3096f..6680364fc2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,24 +1,56 @@ -image: ubuntu:focal - variables: - ANDROID_HOME: "$PWD/android-sdk" - ANDROID_SDK_TOOLS: "7583922_latest" - ANDROID_SDK_LICENSE_HASH: "24333f8a63b6825ea9c5514f83c2829b004d1fee" + ANDROID_HOME: $PWD/android-sdk before_script: - apt-get update - - apt-get -y upgrade - - apt-get -y install ${JDK_PACKAGE} - - apt-get -y install wget gradle - - wget --quiet --output-document=commandlinetools-linux.zip https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_SDK_TOOLS}.zip - - mkdir -p ${ANDROID_HOME} - - unzip -d ${ANDROID_HOME} commandlinetools-linux.zip - - mkdir -p ${ANDROID_HOME}/licenses - - echo -e "\n${ANDROID_SDK_LICENSE_HASH}" >> ${ANDROID_HOME}/licenses/android-sdk-license -build: - parallel: - matrix: - - JDK_PACKAGE: [ openjdk-8-jdk, openjdk-11-jdk ] +after_script: + - gradle --version + +bullseye-jdk11: + image: debian:bullseye-backports + script: + - apt-get -y install openjdk-11-jdk-headless + - apt-get -y install sdkmanager gradle + - yes | sdkmanager --licenses >/dev/null || true + - gradle build --stacktrace + artifacts: + name: groestlcoin-wallet-$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA + paths: + - wallet/build/outputs/apk/**/*.apk + +bookworm-jdk17: + image: debian:bookworm-slim + script: + - apt-get -y install openjdk-17-jdk-headless + - apt-get -y install sdkmanager gradle + - yes | sdkmanager --licenses >/dev/null || true + - gradle build --stacktrace + artifacts: + name: groestlcoin-wallet-$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA + paths: + - wallet/build/outputs/apk/**/*.apk + +jammy-jdk11: + image: ubuntu:jammy + script: + - apt-get -y install openjdk-11-jdk-headless + - apt-get -y install sdkmanager gradle + - yes | sdkmanager --licenses >/dev/null || true + - gradle build --stacktrace + artifacts: + name: groestlcoin-wallet-$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA + paths: + - wallet/build/outputs/apk/**/*.apk + +lunar-jdk17: + image: ubuntu:lunar script: + - apt-get -y install openjdk-17-jdk-headless + - apt-get -y install sdkmanager gradle + - yes | sdkmanager --licenses >/dev/null || true - gradle build --stacktrace + artifacts: + name: groestlcoin-wallet-$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA + paths: + - wallet/build/outputs/apk/**/*.apk diff --git a/README.md b/README.md index f30eb80699..5d53b96b9d 100644 --- a/README.md +++ b/README.md @@ -8,21 +8,15 @@ This project contains several sub-projects: The Android app itself. This is probably what you're searching for. * __market__: App description and promo material for the Google Play app store. - * __integration-android__: - A tiny library for integrating digitial payments into your own Android app - (e.g. donations, in-app purchases). - * __sample-integration-android__: - A minimal example app to demonstrate integration of digital payments into - your Android app. ### PREREQUISITES FOR BUILDING -You'll need git, a Java 8 or 11 SDK and Gradle 4.4 (or later) for this. We'll assume Ubuntu 20.04 LTS (Focal Fossa) -for the package installs, which comes with OpenJDK 8, OpenJDK 11 and Gradle 4.4.1 out of the box. +You'll need git, a Java 11 SDK and Gradle between 4.4 and 6.9.x for this. We'll assume Ubuntu 22.04 LTS (Jammy Jellyfish) +for the package installs, which comes with OpenJDK 11 and Gradle 4.4.1 out of the box. # first time only - sudo apt install git gradle openjdk-8-jdk + sudo apt install git gradle openjdk-11-jdk Create a directory for the Android SDK (e.g. `android-sdk`) and point the `ANDROID_HOME` variable to it. diff --git a/build.gradle b/build.gradle index 34eea62975..1762111468 100644 --- a/build.gradle +++ b/build.gradle @@ -6,9 +6,9 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0' + classpath 'com.android.tools.build:gradle:7.4.1' //noinspection GradleDependency - classpath 'net.sf.proguard:proguard-gradle:6.0.3' + classpath 'net.sf.proguard:proguard-gradle:6.2.2' classpath('fr.avianey.androidsvgdrawable:gradle-plugin:3.1.1') { exclude group: 'xerces' } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 73467bf1f3..c6de48a30e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip diff --git a/integration-android/AUTHORS b/integration-android/AUTHORS deleted file mode 100644 index ee589b3a19..0000000000 --- a/integration-android/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Andreas Schildbach diff --git a/integration-android/COPYING b/integration-android/COPYING deleted file mode 100644 index f433b1a53f..0000000000 --- a/integration-android/COPYING +++ /dev/null @@ -1,177 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS diff --git a/integration-android/build.gradle b/integration-android/build.gradle deleted file mode 100644 index fc53cfd91e..0000000000 --- a/integration-android/build.gradle +++ /dev/null @@ -1,26 +0,0 @@ -plugins { - id 'java' - id 'java-library' -} - -dependencies { - implementation('com.google.android:android:4.0.1.2') { - transitive false - } -} - -sourceSets { - main { - java { - srcDir 'src' - } - resources { - srcDir 'src' - } - } -} - -compileJava { - sourceCompatibility '1.8' - targetCompatibility '1.8' -} diff --git a/integration-android/src/de/schildbach/wallet/integration/android/BitcoinIntegration.java b/integration-android/src/de/schildbach/wallet/integration/android/BitcoinIntegration.java deleted file mode 100644 index ab88c2a21c..0000000000 --- a/integration-android/src/de/schildbach/wallet/integration/android/BitcoinIntegration.java +++ /dev/null @@ -1,271 +0,0 @@ -/* - * Copyright the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package de.schildbach.wallet.integration.android; - -import android.app.Activity; -import android.content.Context; -import android.content.Intent; -import android.content.pm.PackageManager; -import android.net.Uri; -import android.widget.Toast; - -/** - * @author Andreas Schildbach - */ -public final class BitcoinIntegration { - private static final String INTENT_EXTRA_PAYMENTREQUEST = "paymentrequest"; - private static final String INTENT_EXTRA_PAYMENT = "payment"; - private static final String INTENT_EXTRA_TRANSACTION_HASH = "transaction_hash"; - - private static final String MIMETYPE_PAYMENTREQUEST = "application/groestlcoin-paymentrequest"; // BIP 71 - - /** - * Request any amount of Groestlcoins (probably a donation) from user, without feedback from the app. - * - * @param context - * Android context - * @param address - * Groestlcoin address - */ - public static void request(final Context context, final String address) { - final Intent intent = makeBitcoinUriIntent(address, null); - - start(context, intent); - } - - /** - * Request specific amount of Groestlcoins from user, without feedback from the app. - * - * @param context - * Android context - * @param address - * Groestlcoin address - * @param amount - * Groestlcoin amount in satoshis - */ - public static void request(final Context context, final String address, final long amount) { - final Intent intent = makeBitcoinUriIntent(address, amount); - - start(context, intent); - } - - /** - * Request payment from user, without feedback from the app. - * - * @param context - * Android context - * @param paymentRequest - * BIP70 formatted payment request - */ - public static void request(final Context context, final byte[] paymentRequest) { - final Intent intent = makePaymentRequestIntent(paymentRequest); - - start(context, intent); - } - - /** - * Request any amount of Groestlcoins (probably a donation) from user, with feedback from the app. Result - * intent can be received by overriding {@code Activity#onActivityResult(int, int, Intent)}. Result indicates - * either {@link Activity#RESULT_OK} or {@link Activity#RESULT_CANCELED}. In the success case, use - * {@link #transactionHashFromResult(Intent)} to read the transaction hash from the intent. - * - * Warning: A success indication is no guarantee! To be on the safe side, you must drive your own Groestlcoin - * infrastructure and validate the transaction. - * - * @param activity - * Calling Android activity - * @param requestCode - * Code identifying the call when {@code Activity#onActivityResult(int, int, Intent)} is called - * back - * @param address - * Groestlcoin address - */ - public static void requestForResult(final Activity activity, final int requestCode, final String address) { - final Intent intent = makeBitcoinUriIntent(address, null); - - startForResult(activity, requestCode, intent); - } - - /** - * Request specific amount of Groestlcoins from user, with feedback from the app. Result intent can be - * received by overriding {@code Activity#onActivityResult(int, int, Intent)}. Result indicates either - * {@link Activity#RESULT_OK} or {@link Activity#RESULT_CANCELED}. In the success case, use - * {@link #transactionHashFromResult(Intent)} to read the transaction hash from the intent. - * - * Warning: A success indication is no guarantee! To be on the safe side, you must drive your own Groestlcoin - * infrastructure and validate the transaction. - * - * @param activity - * Calling Android activity - * @param requestCode - * Code identifying the call when {@code Activity#onActivityResult(int, int, Intent)} is called - * back - * @param address - * Groestlcoin address - */ - public static void requestForResult(final Activity activity, final int requestCode, final String address, - final long amount) { - final Intent intent = makeBitcoinUriIntent(address, amount); - - startForResult(activity, requestCode, intent); - } - - /** - * Request payment from user, with feedback from the app. Result intent can be received by overriding - * {@code Activity#onActivityResult(int, int, Intent)}. Result indicates either {@link Activity#RESULT_OK} or - * {@link Activity#RESULT_CANCELED}. In the success case, use {@link #transactionHashFromResult(Intent)} - * to read the transaction hash from the intent. - * - * Warning: A success indication is no guarantee! To be on the safe side, you must drive your own Groestlcoin - * infrastructure and validate the transaction. - * - * @param activity - * Calling Android activity - * @param requestCode - * Code identifying the call when {@code Activity#onActivityResult(int, int, Intent)} is called - * back - * @param paymentRequest - * BIP70 formatted payment request - */ - public static void requestForResult(final Activity activity, final int requestCode, final byte[] paymentRequest) { - final Intent intent = makePaymentRequestIntent(paymentRequest); - - startForResult(activity, requestCode, intent); - } - - /** - * Get payment request from intent. Meant for usage by applications accepting payment requests. - * - * @param intent - * intent - * @return payment request or null - */ - public static byte[] paymentRequestFromIntent(final Intent intent) { - - return intent.getByteArrayExtra(INTENT_EXTRA_PAYMENTREQUEST); - } - - /** - * Put BIP70 payment message into result intent. Meant for usage by Groestlcoin wallet applications. - * - * @param result - * result intent - * @param payment - * payment message - */ - public static void paymentToResult(final Intent result, final byte[] payment) { - result.putExtra(INTENT_EXTRA_PAYMENT, payment); - } - - /** - * Get BIP70 payment message from result intent. Meant for usage by applications initiating a Groestlcoin - * payment. - * - * You can use the transactions contained in the payment to validate the payment. For this, you need your - * own Groestlcoin infrastructure though. There is no guarantee that the payment will ever confirm. - * - * @param result - * result intent - * @return payment message - */ - public static byte[] paymentFromResult(final Intent result) { - - return result.getByteArrayExtra(INTENT_EXTRA_PAYMENT); - } - - /** - * Put transaction hash into result intent. Meant for usage by groestlcoin wallet applications. - * - * @param result - * result intent - * @param txHash - * transaction hash - */ - public static void transactionHashToResult(final Intent result, final String txHash) { - result.putExtra(INTENT_EXTRA_TRANSACTION_HASH, txHash); - } - - /** - * Get transaction hash from result intent. Meant for usage by applications initiating a Groestlcoin payment. - * - * You can use this hash to request the transaction from the groestlcoin network, in order to validate. For - * this, you need your own Groestlcoin infrastructure though. There is no guarantee that the transaction has - * ever been broadcasted to the Groestlcoin network. - * - * @param result - * result intent - * @return transaction hash - */ - public static String transactionHashFromResult(final Intent result) { - - return result.getStringExtra(INTENT_EXTRA_TRANSACTION_HASH); - } - - private static final int SATOSHIS_PER_COIN = 100000000; - - private static Intent makeBitcoinUriIntent(final String address, final Long amount) { - final StringBuilder uri = new StringBuilder("groestlcoin:"); - if (address != null) - uri.append(address); - if (amount != null) - uri.append("?amount=") - .append(String.format("%d.%08d", amount / SATOSHIS_PER_COIN, amount % SATOSHIS_PER_COIN)); - - return new Intent(Intent.ACTION_VIEW, Uri.parse(uri.toString())); - } - - private static Intent makePaymentRequestIntent(final byte[] paymentRequest) { - final Intent intent = new Intent(Intent.ACTION_VIEW); - intent.setType(MIMETYPE_PAYMENTREQUEST); - intent.putExtra(INTENT_EXTRA_PAYMENTREQUEST, paymentRequest); - - return intent; - } - - private static void start(final Context context, final Intent intent) { - final PackageManager pm = context.getPackageManager(); - if (pm.resolveActivity(intent, 0) != null) - context.startActivity(intent); - else - redirectToDownload(context); - } - - private static void startForResult(final Activity activity, final int requestCode, final Intent intent) { - final PackageManager pm = activity.getPackageManager(); - if (pm.resolveActivity(intent, 0) != null) - activity.startActivityForResult(intent, requestCode); - else - redirectToDownload(activity); - } - - private static void redirectToDownload(final Context context) { - Toast.makeText(context, "No Groestlcoin application found.\nPlease install Groestlcoin Wallet.", Toast.LENGTH_LONG) - .show(); - - final Intent marketIntent = new Intent(Intent.ACTION_VIEW, - Uri.parse("market://details?id=hashengineering.groestlcoin.wallet")); - final Intent binaryIntent = new Intent(Intent.ACTION_VIEW, - Uri.parse("https://github.com/HashEngineering/groestlcoin-wallet/releases")); - - final PackageManager pm = context.getPackageManager(); - if (pm.resolveActivity(marketIntent, 0) != null) - context.startActivity(marketIntent); - else if (pm.resolveActivity(binaryIntent, 0) != null) - context.startActivity(binaryIntent); - // else out of luck - } -} diff --git a/wallet/graphics-prod/mipmap/ic_app_color_48dp-mdpi.svg b/market/mainnet-app-icon-48dp.svg similarity index 100% rename from wallet/graphics-prod/mipmap/ic_app_color_48dp-mdpi.svg rename to market/mainnet-app-icon-48dp.svg diff --git a/market/market-description-ar.txt b/market/market-description-ar.txt index 005576bec9..d622e95bf4 100644 --- a/market/market-description-ar.txt +++ b/market/market-description-ar.txt @@ -1,10 +1,10 @@ -إمتلك البت كوينز الخاصة بك, دائماً في جيبك! تدفع بسرعة بمجرد مسح رمز الـ QR. و كتاجر، يمكنك قبض مبالغ خدماتك حالاً وبكل ثقة. محفظة البتكوين هي أول تطبيق محمول لعملة البتكوين، و كذا الأكثر أماناً. +إمتلك البت كوينز الخاصة بك, دائماً في جيبك! تدفع بسرعة بمجرد مسح رمز الـ QR. و كتاجر، يمكنك قبض مبالغ خدماتك حالاً وبكل ثقة. محفظة الغرسلكوين هي أول تطبيق محمول لعملة الغرسلكوين، و كذا الأكثر أماناً. المميزات • لا داعي للتسجيل أو استخدام تطبيقات شبكة إنترنت أو الخدمات السحابية! كون الاتصال في هذه المحفظة غير مركزي (peer-to-peer) ولا تعتمد على سيرفر خدمة. -إظهار رصيدك من البتكوين على شكل GRS و µGRS و mGRS. +إظهار رصيدك من الغرسلكوين على شكل GRS و µGRS و mGRS. • تحويل الغرسلكوين من وإلى العملات المحلية. ارسال واستقبال عملة Groestlcoin عبر NFC, QR codes او Groestlcoin روابط • دفتر عناوين لحفظ عناوين الغرسلكوين المستخدمة بشكل دوري. @@ -15,7 +15,7 @@ للمشاركة -محفظة البتكوين تطبيق حر و مفتوح المصدر. تحت رخصة : GPLv3 +محفظة الغرسلكوين تطبيق حر و مفتوح المصدر. تحت رخصة : GPLv3 https://www.gnu.org/licenses/gpl-3.0.ar.html الكود المصدري للبرنامج متوافر على GitHub: diff --git a/market/market-description-cs.txt b/market/market-description-cs.txt index f180225441..9681265f13 100644 --- a/market/market-description-cs.txt +++ b/market/market-description-cs.txt @@ -12,6 +12,8 @@ • Systémové notifikace při přijaté platbě • Načítání papírových peněženek (např. ty co se používají u cold storage). • Widget pro zobrazení Groestlcoin bilance. +• Bezpečnost: Podporuje Taproot, Segwit a nový formát bech32m. +• Soukromí: Podporuje Tor prostřednictvím samostatné aplikace Orbot. PŘISPĚJTE @@ -26,4 +28,4 @@ Veškeré překlady jsou spravovány přes Transifex: https://www.transifex.com/bitcoin-wallet/bitcoin-wallet/ -Použití na vlastní riziko! +Používejte jen na vlastní nebezpečí! Používejte pouze pro malé částky. diff --git a/market/market-description-cy.txt b/market/market-description-cy.txt index ae2ebedbf0..bcb256e1c4 100644 --- a/market/market-description-cy.txt +++ b/market/market-description-cy.txt @@ -17,10 +17,10 @@ CYFRANNU -Mae Waled Groestlcoin yn feddalwedd cod agored ac am ddim. Trwydded: GPLv3 +Mae Groestlcoin Walllet yn feddalwedd am ddim ac yn god agored. Trwydded: GPLv3 https://www.gnu.org/licenses/gpl-3.0.en.html -Mae ein cod gwreiddiol ar gael ar GitHub: +Mae ein cod ar gael ar GitHub: https://github.com/Groestlcoin/groestlcoin-wallet Rheolir pob cyfieithiad trwy Transifex: diff --git a/market/market-description-fa.txt b/market/market-description-fa.txt index 1ef6502e3b..037f5250a7 100644 --- a/market/market-description-fa.txt +++ b/market/market-description-fa.txt @@ -1,13 +1,13 @@ -بیت‌کوین‌های تان را همیشه با خود در کیف پولتان داشته باشید. به سرعت با اسکن کردن QR-code پرداخت کنید. به عنوان فروشنده، پرداخت‌ها را با امنیت و سرعت دریافت کنید. Groestlcoin Wallet اولین برنامه بیت‌کوین بر روی گوشیهای همراه بود و همچنین به عنوانه امن‌ترین برنامه در نظر گرفته می‌‌شود. +غرسلكوين‌های تان را همیشه با خود در کیف پولتان داشته باشید. به سرعت با اسکن کردن QR-code پرداخت کنید. به عنوان فروشنده، پرداخت‌ها را با امنیت و سرعت دریافت کنید. Groestlcoin Wallet اولین برنامه غرسلكوين بر روی گوشیهای همراه بود و همچنین به عنوانه امن‌ترین برنامه در نظر گرفته می‌‌شود. خصوصیات به هیچگونه ثبت نام و یا سرویس جانبی اینترنتی نیاز ندارید. این کیف پول غیر مترمرکز و نظیر به نظیر (p2p) بوده. -نمایش میزان بیت‌کوین به صورت واحد بیت‌کوین, میلی‌ بیت‌کوین و میکرو بیت‌کوین. +نمایش میزان غرسلكوين به صورت واحد غرسلكوين, میلی‌ غرسلكوين و میکرو غرسلكوين. تبدیل ارزش به واحد پولی‌ کشورهای متفاوت. -فرستادن و دریافت بیت‌کوین به صورت NFC ، Qrcode و آدرس بیت‌کوین. -بدون دسترسی‌ به اینترنت همچنان می‌توان بیت‌کوین را از طریق بلوتوث پرداخت کرد. +فرستادن و دریافت غرسلكوين به صورت NFC ، Qrcode و آدرس غرسلكوين. +بدون دسترسی‌ به اینترنت همچنان می‌توان غرسلكوين را از طریق بلوتوث پرداخت کرد. وقتی‌ پول دریافت می‌کنید برنامه شما را مطلع می‌کند. استفاده از کیف پول‌های کاغذی (همانند آنهایی که به عنوانه cold storage استفاده می‌‌شود). ویجت برای نشان دادن موجودی شما. diff --git a/market/market-description-he.txt b/market/market-description-he.txt index 472c264bce..028d537a0b 100644 --- a/market/market-description-he.txt +++ b/market/market-description-he.txt @@ -1,17 +1,17 @@ -שא את הביטקוין שלך עליך ללא תלות בשרות חיצוני, העבר או קבל כסף בקלות על ידי ברקוד, הכנסת כתובת או תקשורת מגע (NFC). כסוחר, אתה תקבל תשלומים בצורה בטוחה ומיידית. ארנק הביטקוין הוא היישום הנייד הראשון לביטקוין, וכנראה גם המאובטח ביותר! +שא את הגרוסטלקוין שלך עליך ללא תלות בשרות חיצוני, העבר או קבל כסף בקלות על ידי ברקוד, הכנסת כתובת או תקשורת מגע (NFC). כסוחר, אתה תקבל תשלומים בצורה בטוחה ומיידית. ארנק הגרוסטלקוין הוא היישום הנייד הראשון לגרוסטלקוין, וכנראה גם המאובטח ביותר! תכונות: • אין צורך בהרשמה, שירות אינטרנט או ענן. הארנק הוא מבוזר ומעמית-לעמית. -• הצגת היתרה בביטקוין, מילי-ביט או מיוביט. +• הצגת היתרה בגרוסטלקוין, מילי-ביט או מיוביט. • המרה למטבעות מקומיים. -• קבלה ושליחה של ביטקוינים דרך NFC, קוד QR או באמצעות כתובות ביטקוין. +• קבלה ושליחה של ביטקוינים דרך NFC, קוד QR או באמצעות כתובות גרוסטלקוין. • כשאתה לא מחובר לרשת, עדיין תוכל לשלם באמצעות Bluetooth. • התראות מערכת על קבלת מטבעות. • גריפת ארנקי נייר (כלומר, אלו המשמשים לצבירה קרה) -• וידג'ט לבדיקת יתרת הביטקוין שלך +• וידג'ט לבדיקת יתרת הגרוסטלקוין שלך -אם אתה רוצה לתרום לפרויקט ארנק הביטקוין, הפרויקט ממוקם ב +אם אתה רוצה לתרום לפרויקט ארנק הגרוסטלקוין, הפרויקט ממוקם ב https://github.com/Groestlcoin/groestlcoin-wallet רישיון : GPLv3 diff --git a/market/market-description-hu.txt b/market/market-description-hu.txt index 286067db91..4668e35029 100644 --- a/market/market-description-hu.txt +++ b/market/market-description-hu.txt @@ -1,4 +1,4 @@ -Mindig legyenek nálad a Groestlcoin-jaid a zsebedben! Úgy tudsz fizetni, hogy gyorsan beolvasol egy QR kódot. Kereskedőként megkapod a fizetséget megbízhatóan és azonnal. A Groestlcoin Wallet az első mobil Groestlcoin alkalmazás és vitathatatlanul a legbiztonságosabb is! +Legyenek a Groestlcoinjaid mindig kéznél, a zsebedben! Fizess egyszerűen QR-kód beolvasásával. Kereskedőként az utalásokat gyorsan és megbízhatóan fogadhatod. A Groestlcoin Wallet a referencia az "Egyszerűsített Fizetési Igazolás" megvalósítására, ahogyan az a Groestlcoin publikációban szerepel. JELLEMZŐK @@ -12,6 +12,8 @@ • Rendszerüzenet Groestlcoin érkezésekor. • Papírtárcák besöprése (pl. amik hűtőháznak vannak használva). • Widget a Groestlcoin egyenlegről. +• Biztonság: Támogatott a Taproot, Segwit és az új bech32m címek. +• Adatvédelem: Tor támogatás Orbot-on keresztül. HOZZÁJÁRULÁS @@ -26,4 +28,4 @@ Minden fordítást a Transifex kezelt: https://www.transifex.com/bitcoin-wallet/bitcoin-wallet/ -Saját felelősségedre használd! +Kizárólag saját felelősségre! Csak zsebpénznyi összegek használatára. diff --git a/market/market-description-it.txt b/market/market-description-it.txt index 76cca05b09..9dfbbfb447 100644 --- a/market/market-description-it.txt +++ b/market/market-description-it.txt @@ -1,4 +1,4 @@ -Porta i tuoi Groestlcoin sempre con te, in tasca! Paghi velocemente scansionando un QR-code. Come un commerciante, riceverai i pagamenti sicuri e istantanei. Groestlcoin Wallet è la prima Groestlcoin app mobile, e probabilmente anche la più sicura! +Tieni i tuoi Groestlcoin sempre con te, in tasca! Paghi scansionando rapidamente un codice QR. Come commerciante, ricevi pagamenti in modo affidabile e istantaneo. Groestlcoin Wallet è un'implementazione di riferimento della "Verifica dei pagamenti semplificata" come descritto nel whitepaper Groestlcoin. CARATTERISTICHE @@ -12,6 +12,8 @@ • Sistema di notifica per le monete ricevute. • Svuotamento di portafogli cartacei (es: quelli utilizzati come depositi offline) • App Widget per il saldo Groestlcoin +• Sicurezza: supporta Taproot, Segwit ed il nuovo formato bench32m. +• Privacy: supporta Tor tramite l'app Orbot. CONTRIBUISCI @@ -26,4 +28,4 @@ Tutte le traduzioni sono gestite attraverso Transifex: https://www.transifex.com/bitcoin-wallet/bitcoin-wallet/ -Usala a tuo rischio! +Uso a proprio rischio! Utilizzare solo per piccoli importi. diff --git a/market/market-description-iw.txt b/market/market-description-iw.txt index 969d93846c..82a3ff4e5b 100644 --- a/market/market-description-iw.txt +++ b/market/market-description-iw.txt @@ -1,16 +1,16 @@ -שא את הביטקוין שלך עליך ללא תלות בשרות חיצוני, העבר או קבל כסף בקלות על ידי ברקוד, הכנסת כתובת או תקשורת מגע (NFC). כסוחר, אתה תקבל תשלומים בצורה בטוחה ומיידית. ארנק הביטקוין הוא היישום הנייד הראשון לביטקוין, וכנראה גם המאובטח ביותר! +שא את הגרוסטלקוין שלך עליך ללא תלות בשרות חיצוני, העבר או קבל כסף בקלות על ידי ברקוד, הכנסת כתובת או תקשורת מגע (NFC). כסוחר, אתה תקבל תשלומים בצורה בטוחה ומיידית. ארנק הגרוסטלקוין הוא היישום הנייד הראשון לגרוסטלקוין, וכנראה גם המאובטח ביותר! FEATURES: • אין צורך בהרשמה, שירות אינטרנט או ענן. הארנק הוא מבוזר ומעמית-לעמית. -• הצגת היתרה בביטקוין, מילי-ביט או מיוביט. +• הצגת היתרה בגרוסטלקוין, מילי-ביט או מיוביט. • המרה למטבעות מקומיים. -• קבלה ושליחה של ביטקוינים דרך NFC, קוד QR או באמצעות כתובות ביטקוין. +• קבלה ושליחה של ביטקוינים דרך NFC, קוד QR או באמצעות כתובות גרוסטלקוין. • כשאתה לא מחובר לרשת, עדיין תוכל לשלם באמצעות Bluetooth. • התראות מערכת על קבלת מטבעות. -• וידג'ט לבדיקת יתרת הביטקוין שלך +• וידג'ט לבדיקת יתרת הגרוסטלקוין שלך -אם אתה רוצה לתרום לפרויקט ארנק הביטקוין, הפרויקט ממוקם ב +אם אתה רוצה לתרום לפרויקט ארנק הגרוסטלקוין, הפרויקט ממוקם ב https://github.com/Groestlcoin/groestlcoin-wallet רישיון : GPLv3 diff --git a/market/market-description-ja.txt b/market/market-description-ja.txt index f77eae0404..61fef80e91 100644 --- a/market/market-description-ja.txt +++ b/market/market-description-ja.txt @@ -11,7 +11,9 @@ • オフラインの時でもBluetoothで支払い可能。 • コイン受取の通知。 • ペーパーウォレットをスィープ(例. コールドストレージ用) -• グルシュルコイン残高のためのウィジェット。 +• グロストルコイン残高のためのウィジェット。 +・安全性: Taproot、Segwit、および新しいbech32mフォーマットをサポート。 +• プライバシー: 別途インストールしたOrbotアプリを通じてTorをサポート。 開発に協力ください diff --git a/market/market-description-ko.txt b/market/market-description-ko.txt index 9c7332d4f2..198317c0a6 100644 --- a/market/market-description-ko.txt +++ b/market/market-description-ko.txt @@ -1,21 +1,21 @@ -주머니에 항상 넣어다닐 수 있는 비트코인 지갑! QR 코드를 통해 빠르게 비트코인 결제가 가능합니다. 판매자의 경우 안전하고 빠르게 대금을 받을 수 있습니다. 비트코인 지갑(Groestlcoin Wallet)은 최초의 모바일 비트코인 앱이며 최고의 보안을 자랑합니다! +주머니에 항상 넣어다닐 수 있는 그로스톨코인 지갑! QR 코드를 통해 빠르게 그로스톨코인 결제가 가능합니다. 판매자의 경우 안전하고 빠르게 대금을 받을 수 있습니다. 그로스톨코인 지갑(Groestlcoin Wallet)은 최초의 모바일 그로스톨코인 앱이며 최고의 보안을 자랑합니다! 특징 • 회원 가입이나 별도의 인증 과정이 없는 P2P 기반의 지갑 -• 다양한 비트코인 단위 설정 - GRS, mGRS, µGRS -• 모든 국가별 비트코인 평가 환율 제공 -• 비트코인 URL, QR 코드, NFC를 통해 비트코인 거래 가능 +• 다양한 그로스톨코인 단위 설정 - GRS, mGRS, µGRS +• 모든 국가별 그로스톨코인 평가 환율 제공 +• 그로스톨코인 URL, QR 코드, NFC를 통해 그로스톨코인 거래 가능 • 오프라인일 때에도 블루투스를 통해 거래 가능 -• 비트코인 수신 시 시스템의 자동 알림 기능 +• 그로스톨코인 수신 시 시스템의 자동 알림 기능 • 종이 지갑(오프라인 형태로 사용되는 출력물)에서 가져오기 • 전 세계 모든 통화별 잔액 표시 기능 도움받은 곳 -비트코인 지갑은 오픈소스이며 무료 소프트웨어입니다. 라이센스 정책 : GPLv3 +그로스톨코인 지갑은 오픈소스이며 무료 소프트웨어입니다. 라이센스 정책 : GPLv3 https://www.gnu.org/licenses/gpl-3.0.en.html 소스 코드는 깃허브(GitHub)에서 볼 수 있습니다. diff --git a/market/market-description-nl.txt b/market/market-description-nl.txt index 7b3b87c544..5638979e66 100644 --- a/market/market-description-nl.txt +++ b/market/market-description-nl.txt @@ -1,4 +1,4 @@ -Draag je Groestlcoins altijd bij je, in je broekzak! Je kunt vlot betalen door een QR-code te scannen. Als winkelier ontvang je je betalingen betrouwbaar en onmiddelijk. Groestlcoin Wallet is de eerste mobiele Groestlcoin-app, en misschien wel de veiligste! +Neem je Groestlcoins altijd mee in je broekzak! Je kunt snel betalen door een QR-code te scannen. Als winkelier ontvang je je betalingen betrouwbaar en direct. Groestlcoin Wallet is de eerste mobiele Groestlcoin-app en misschien wel de veiligste! EIGENSCHAPPEN @@ -26,4 +26,4 @@ Alle vertalingen worden geregeld via Transifex: https://www.transifex.com/bitcoin-wallet/bitcoin-wallet/ -Gebruik op eigen risico! +Het gebruik van de app is voor eigen risico! Niet bedoeld voor grote bedragen. diff --git a/market/market-description-pl.txt b/market/market-description-pl.txt index a3c009efb0..2258c3cff9 100644 --- a/market/market-description-pl.txt +++ b/market/market-description-pl.txt @@ -1,7 +1,7 @@ -Miej swoje Groestlcoiny zawsze przy sobie, w Twojej kieszeni! Możesz płacić przez szybkie zeskanowanie QR kodu. Jako sprzedawca otrzymujesz przelew szybko i bezpiecznie. Groestlcoin Wallet jest pierwszą mobilną Groestlcoin aplikacją oraz jest uważany za najbardziej bezpieczną. +Miej swoje Groestlcoins zawsze przy sobie, w kieszeni! Płacisz poprzez szybkie zeskanowanie kodu QR. Jako sprzedawca, otrzymujesz płatności niezawodnie i natychmiast. Groestlcoin Wallet jest referencyjną implementacją "Uproszczonej Weryfikacji Płatności" opisanej w dokumencie Groestlcoin Whitepaper. -NOWOŚCI +FUNKCJE • Bez rejestracji, przeglądarki i połączenia z chmurą. Ten portfel jest zdecentralizowany i peer-to-peer. • Wyświetlaj ilość groestlcoinów w GRS, mGRS lub µGRS. @@ -11,9 +11,12 @@ • Powiadomienia o otrzymaniu monet. • Zamiatanie portfeli papierowych (np. Używanych do przechowywania w chłodni). • Widget z saldem Groestlcoinów. +• Bezpieczeństwo: Obsługuje Taproot, Segwit i nowy format bech32m. +• Prywatność: Wspiera Tor przy użyciu oddzielnej aplikacji Orbot. PRZYCZYNIĆ SIĘ + Groestlcoin Wallet to oprogramowanie typu open source i free software. Licencja: GPLv3 https://www.gnu.org/licenses/gpl-3.0.en.html @@ -24,4 +27,4 @@ Wszystkie tłumaczenia są zarządzane przez Transifex: https://www.transifex.com/bitcoin-wallet/bitcoin-wallet/ -Używasz na własne ryzyko! +Używaj na własne ryzyko! Stosować tylko do kieszonkowych ilości. diff --git a/market/market-description-zh.txt b/market/market-description-zh.txt index be07f04f67..415285c34a 100644 --- a/market/market-description-zh.txt +++ b/market/market-description-zh.txt @@ -1,17 +1,17 @@ -将比特币随身携带,在您的口袋中! 扫描二维码快速支付,即时可靠的接收付款。比特币钱包 (Groestlcoin Wallet) 是首选的、最安全的比特币应用! +将格羅斯币随身携带,在您的口袋中! 扫描二维码快速支付,即时可靠的接收付款。格羅斯币钱包 (Groestlcoin Wallet) 是首选的、最安全的格羅斯币应用! 功能 -• 不需要注册,不需要网络服务,也不需要云!比特币钱包是“去中心化”的,点对点的 (peer to peer)。 -• 以 GRS, mGRS 以及 µGRS 为单位显示比特币金额。 -• 从比特币转换为国家货币,或者从国家货币转换为比特币。 -• 通过 NFC,二维码、比特币链接发送或接收比特币。 -• 为经常使用的比特币地址创建地址簿。 +• 不需要注册,不需要网络服务,也不需要云!格羅斯币钱包是“去中心化”的,点对点的 (peer to peer)。 +• 以 GRS, mGRS 以及 µGRS 为单位显示格羅斯币金额。 +• 从格羅斯币转换为国家货币,或者从国家货币转换为格羅斯币。 +• 通过 NFC,二维码、格羅斯币链接发送或接收格羅斯币。 +• 为经常使用的格羅斯币地址创建地址簿。 • 断网情况下仍然可以通过蓝牙付款。 -• 收到比特币时显示系统通知。 -• 与纸钱包交换比特币(纸钱包经常用于冷存储)。 -• 应用程序小部件,用于显示比特币余额。 +• 收到格羅斯币时显示系统通知。 +• 与纸钱包交换格羅斯币(纸钱包经常用于冷存储)。 +• 应用程序小部件,用于显示格羅斯币余额。 贡献 diff --git a/market/market-promo-graphic.png b/market/market-promo-graphic.png deleted file mode 100644 index 2c20003609..0000000000 Binary files a/market/market-promo-graphic.png and /dev/null differ diff --git a/market/market-promo-text-ar.txt b/market/market-promo-text-ar.txt index 8fccde8965..a30318e707 100644 --- a/market/market-promo-text-ar.txt +++ b/market/market-promo-text-ar.txt @@ -1 +1 @@ -البتكوين الخاصة بك، في جيبك ! +الغرسلكوين الخاصة بك، في جيبك ! diff --git a/market/market-promo-text-cy.txt b/market/market-promo-text-cy.txt index 74b07e6ac1..fa94b8bf92 100644 --- a/market/market-promo-text-cy.txt +++ b/market/market-promo-text-cy.txt @@ -1 +1 @@ -Dy Fitcoin dy hun, yn dy boced dy hun! \ No newline at end of file +Dy Groestlcoin dy hun, yn dy boced dy hun! diff --git a/market/market-promo-text-ko.txt b/market/market-promo-text-ko.txt index 7ee220071f..f0d5ce0145 100644 --- a/market/market-promo-text-ko.txt +++ b/market/market-promo-text-ko.txt @@ -1 +1 @@ -내 주머니, 내 비트코인! +내 주머니, 내 그로스톨코인! diff --git a/market/market-promo-text-zh.txt b/market/market-promo-text-zh.txt index d87f457796..70fc13b8c3 100644 --- a/market/market-promo-text-zh.txt +++ b/market/market-promo-text-zh.txt @@ -1 +1 @@ -将您自己的比特币装进您自己的口袋! \ No newline at end of file +将您自己的格羅斯币装进您自己的口袋! diff --git a/wallet/graphics/mipmap/ic_app_color_48dp-mdpi.svg b/market/testnet-app-icon-48dp.svg similarity index 100% rename from wallet/graphics/mipmap/ic_app_color_48dp-mdpi.svg rename to market/testnet-app-icon-48dp.svg diff --git a/sample-integration-android/AUTHORS b/sample-integration-android/AUTHORS deleted file mode 100644 index ee589b3a19..0000000000 --- a/sample-integration-android/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Andreas Schildbach diff --git a/sample-integration-android/AndroidManifest.xml b/sample-integration-android/AndroidManifest.xml deleted file mode 100644 index e437a82cbd..0000000000 --- a/sample-integration-android/AndroidManifest.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/sample-integration-android/COPYING b/sample-integration-android/COPYING deleted file mode 100644 index f433b1a53f..0000000000 --- a/sample-integration-android/COPYING +++ /dev/null @@ -1,177 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS diff --git a/sample-integration-android/build.gradle b/sample-integration-android/build.gradle deleted file mode 100644 index 79f840414f..0000000000 --- a/sample-integration-android/build.gradle +++ /dev/null @@ -1,56 +0,0 @@ -plugins { - id 'com.android.application' -} - -repositories { - mavenLocal() -} -configurations { - all*.exclude group: 'com.google.android', module: 'android' -} - -dependencies { - implementation project(':integration-android') - implementation 'com.github.groestlcoin:groestlcoinj-core:0.15.10' -} - -android { - compileSdkVersion 'android-19' - buildToolsVersion '30.0.3' - - defaultConfig { - dexOptions { - preDexLibraries false - } - // Enabling multidex support. - multiDexEnabled true - } - - sourceSets { - main { - manifest.srcFile 'AndroidManifest.xml' - java.srcDirs = ['src'] - res.srcDirs = ['res'] - assets.srcDirs = ['assets'] - } - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - lintOptions { - checkReleaseBuilds false - abortOnError false - } - - packagingOptions { - exclude 'lib/x86_64/darwin/libscrypt.dylib' - exclude 'org/bitcoinj/crypto/mnemonic/wordlist/english.txt' - exclude 'org/bitcoinj/crypto/cacerts' - exclude 'org.groestlcoin.production.checkpoints.txt' - exclude 'org.groestlcoin.test.checkpoints.txt' - exclude '**/*.java' - } -} diff --git a/sample-integration-android/res/layout/sample_activity.xml b/sample-integration-android/res/layout/sample_activity.xml deleted file mode 100644 index 726610d77c..0000000000 --- a/sample-integration-android/res/layout/sample_activity.xml +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - -