-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 598cf35
Showing
480 changed files
with
93,090 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
name: Dummy for test | ||
|
||
on: | ||
workflow_dispatch: | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
dummy: | ||
if: ${{ false }} | ||
runs-on: ubuntu-latest | ||
steps: | ||
- run: "" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
name: Publish Maven | ||
|
||
on: | ||
workflow_dispatch: | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
build: | ||
runs-on: macos-13 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Select Xcode version | ||
run: sudo xcode-select -s '/Applications/Xcode_15.0.1.app/Contents/Developer' | ||
- name: Show Xcode version | ||
run: xcodebuild -version | ||
- name: Set up JDK 17 | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: '17' | ||
distribution: 'temurin' | ||
- name: publish maven | ||
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 | ||
with: | ||
arguments: publish |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
name: Test | ||
|
||
on: | ||
push: | ||
branches: [ "main" ] | ||
paths: | ||
- 'kotlin-multiplatform/**' | ||
- 'react-native/**' | ||
workflow_dispatch: | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
build: | ||
runs-on: macos-13 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Select Xcode version | ||
run: sudo xcode-select -s '/Applications/Xcode_15.0.1.app/Contents/Developer' | ||
- name: Show Xcode version | ||
run: xcodebuild -version | ||
- name: Set up JDK 17 | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: '17' | ||
distribution: 'temurin' | ||
- name: test-kmm | ||
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 | ||
with: | ||
arguments: testDebugUnitTest | ||
- name: Archive code coverage results | ||
if: always() | ||
uses: actions/upload-artifact@v1 | ||
with: | ||
name: code-coverage-report | ||
path: kotlin-multiplatform/build/reports/tests/testDebugUnitTest |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
*.iml | ||
.gradle | ||
.idea | ||
.DS_Store | ||
build | ||
captures | ||
.externalNativeBuild | ||
.cxx | ||
local.properties | ||
xcuserdata |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2023 RICOH360 | ||
|
||
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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
[![test](https://github.com/ricohapi/theta-ble-client/actions/workflows/test.yaml/badge.svg)](https://github.com/ricohapi/theta-ble-client/actions/workflows/test.yaml) | ||
|
||
# THETA BLE Client | ||
|
||
This library provides a way to control RICOH THETA using [THETA Bluetooth API](https://github.com/ricohapi/theta-api-specs/tree/main/theta-bluetooth-api). | ||
Your app can perform the following actions: | ||
* Take a photo and video | ||
* Acquire the status of THETA | ||
* Acquire and set properties of THETA | ||
|
||
## Supported Environments | ||
* Android native (Kotlin) | ||
* iOS native (Swift) | ||
* React Native | ||
|
||
## Supported Models | ||
* THETA Z1 | ||
* THETA X | ||
|
||
## Directory Structure | ||
* theta-ble-client | ||
* demos: Demo applications | ||
* docs: Documentation | ||
* kotlin-multiplatform: Library body ([Kotlin Multiplatform Mobile](https://kotlinlang.org/docs/multiplatform-mobile-getting-started.html)) | ||
* react-native: React Native package | ||
|
||
## Build | ||
|
||
### Android (aar) | ||
``` | ||
theta-ble-client$ ./gradlew assemble | ||
``` | ||
|
||
aar is output to `theta-ble-client-$/kotlin-multiplatform/build/outputs/aar` | ||
|
||
### iOS (XCFramework) | ||
``` | ||
theta-ble-client$ ./gradlew podPublishXCFramework | ||
``` | ||
|
||
XCFramework is output to `theta-ble-client$/kotlin-multiplatform/build/cocoapods/publish` | ||
|
||
### ReactNative | ||
See README in each directory.(`react-native`) | ||
|
||
### Test | ||
``` | ||
theta-ble-client$ ./gradlew testReleaseUnitTest | ||
``` | ||
|
||
## How to Use | ||
See tutorial in `docs` directory. | ||
|
||
|
||
## License | ||
|
||
[MIT License](LICENSE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
plugins { | ||
//trick: for the same plugin versions in all sub-modules | ||
id("com.android.library").version("8.1.2").apply(false) | ||
kotlin("multiplatform").version("1.9.10").apply(false) | ||
kotlin("plugin.serialization").version("1.9.10").apply(false) | ||
id("org.jetbrains.dokka").version("1.9.10") | ||
} | ||
|
||
buildscript { | ||
dependencies { | ||
classpath("org.jetbrains.dokka:versioning-plugin:1.9.10") | ||
} | ||
} | ||
|
||
tasks.register("clean", Delete::class) { | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
*.iml | ||
.gradle | ||
/local.properties | ||
/.idea/caches | ||
/.idea/libraries | ||
/.idea/modules.xml | ||
/.idea/workspace.xml | ||
/.idea/navEditor.xml | ||
/.idea/assetWizardSettings.xml | ||
.DS_Store | ||
/build | ||
/captures | ||
.externalNativeBuild | ||
.cxx | ||
local.properties | ||
|
||
/mathlibrary | ||
/spherelibrary | ||
/thetalibrary |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2023 RICOH360 | ||
|
||
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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Android demo for theta-ble-client | ||
|
||
A simple sample Android application using [theta-ble-client](https://github.com/ricohapi/theta-ble-client). | ||
|
||
## 目的 | ||
|
||
* THETA BLE Clientを使う開発者に、簡単な実例を示す | ||
|
||
## Functions | ||
|
||
* List photos in Theta. | ||
* View sphere photo in Theta. | ||
* Take a photo with Theta. | ||
|
||
## 設計方針 | ||
|
||
* 非同期処理をコルーチンで書けるKotlinを使う | ||
* UIの簡潔な記述ができる[Jetpack Compose](https://developer.android.com/jetpack/compose?hl=ja)を使う | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Android demo for theta-ble-client | ||
|
||
A simple sample Android application using [theta-ble-client](https://github.com/ricohapi/theta-ble-client). | ||
|
||
## Objective | ||
|
||
* Show developers how to use THETA BLE Client. | ||
|
||
## Functions | ||
|
||
* List photos in Theta. | ||
* View sphere photo in Theta. | ||
* Take a photo with Theta. | ||
|
||
## Policy | ||
|
||
* Use Kotlin which coroutine simplifies code that executes asynchronously. | ||
* Use [Jetpack Compose](https://developer.android.com/jetpack/compose) that can describe UI simply. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/build |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
plugins { | ||
id 'com.android.application' | ||
id 'org.jetbrains.kotlin.android' | ||
id 'kotlinx-serialization' | ||
} | ||
|
||
android { | ||
compileSdk 34 | ||
|
||
defaultConfig { | ||
applicationId "com.ricoh360.thetableclient.thetaBleClientDemo" | ||
minSdk 26 | ||
targetSdk 34 | ||
versionCode 1 | ||
versionName "1.0.0" | ||
|
||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" | ||
vectorDrawables { | ||
useSupportLibrary true | ||
} | ||
|
||
} | ||
|
||
buildTypes { | ||
release { | ||
minifyEnabled false | ||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' | ||
} | ||
} | ||
compileOptions { | ||
sourceCompatibility JavaVersion.VERSION_1_8 | ||
targetCompatibility JavaVersion.VERSION_1_8 | ||
} | ||
kotlinOptions { | ||
jvmTarget = '1.8' | ||
} | ||
buildFeatures { | ||
compose true | ||
buildConfig true | ||
} | ||
composeOptions { | ||
kotlinCompilerExtensionVersion compose_version | ||
} | ||
packagingOptions { | ||
resources { | ||
excludes += '/META-INF/{AL2.0,LGPL2.1}' | ||
} | ||
} | ||
// for JUnit5 | ||
testOptions { | ||
unitTests.all { | ||
useJUnitPlatform() | ||
} | ||
unitTests.returnDefaultValues = true // Disable exception "Method e in android.util.Log not mocked." | ||
} | ||
namespace 'com.ricoh360.thetableclient.thetaBleClientDemo' | ||
} | ||
|
||
dependencies { | ||
|
||
implementation 'androidx.core:core-ktx:1.12.0' | ||
implementation "androidx.compose.ui:ui:$compose_version" | ||
implementation "androidx.compose.material:material:$compose_version" | ||
implementation "androidx.compose.ui:ui-tooling-preview:$compose_version" | ||
implementation 'androidx.compose.runtime:runtime-livedata:1.5.4' | ||
implementation 'androidx.activity:activity-compose:1.8.0' | ||
implementation "androidx.navigation:navigation-compose:2.7.4" | ||
implementation 'androidx.webkit:webkit:1.8.0' | ||
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version" | ||
implementation 'com.jakewharton.timber:timber:5.0.1' | ||
implementation 'io.coil-kt:coil-compose:2.2.2' | ||
|
||
testImplementation 'org.junit.jupiter:junit-jupiter:5.9.0' | ||
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version" | ||
testImplementation 'org.junit.jupiter:junit-jupiter' | ||
androidTestImplementation 'androidx.test.ext:junit:1.1.5' | ||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' | ||
androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version" | ||
debugImplementation "androidx.compose.ui:ui-tooling:$compose_version" | ||
debugImplementation "androidx.compose.ui:ui-test-manifest:$compose_version" | ||
|
||
implementation "com.ricoh360.thetaclient:theta-client:1.5.0" | ||
|
||
implementation "com.ricoh360.thetableclient:theta-ble-client-android:1.0.0" | ||
} |
Oops, something went wrong.