質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

Q&A

解決済

4回答

7460閲覧

スマホアプリからのDB接続について

shori0128

総合スコア29

Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

0グッド

3クリップ

投稿2017/08/22 08:46

業務用のシステム開発に向けて、一般的な開発方法について質問させてください。

業務で利用しているWebアプリケーションの一部のデータを利用して、スマホ用のシステム開発を考えています。
データベースはOracleDB、MssqlDBを利用しています。

当初スマホアプリ化を検討していたのですが、スマホアプリからOracle、Mssqlへの接続方法が調べてもあまり情報が出てきません。
このような環境の場合は、スマホアプリではなく、ブラウザベースでスマホ用の画面を作るのが一般的なのでしょうか。
実装が簡単なのはブラウザベースであることは理解しているのですが、アプリの導入を検討しているため、可能であればアプリでの開発をしてみたいと考えており、方法があればご教示いただきたいと考えております。

尚、アプリの開発は、Web系の言語が流用できるため、Cordovaの利用を考えています。

当方プログラミング初心者のため、質問の内容がわかりづらいところがあるかもしれませんが、よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

社内(プライベート環境)のDBへの接続と考えて良いですか?
Cordovaを利用する場合、基本的に処理はJavaScriptで記載することになります。
こちらの回答が参考になる可能性があります。

その上でDBへの接続をどうするのかということになりますが、別途スマホからの処理を受け付けるサーバサイドの処理を用意しておいて、それに対しスマホアプリからJavaScriptで通信し、必要に応じて非同期で画面(HTML)を書き換えながら処理をしていく。
といった方式を基本として開発していくのが良いと考えます。

つまりスマホアプリ側では利用しているDBが何なのか等は意識しません。

「業務で利用しているWebアプリケーションの一部のデータを利用して、スマホ用のシステム開発を考えています。」
という方針自体は問題ないと思います。
まずは「業務で利用しているWebアプリケーション」の一部の処理をスマホ用に切り出し、例えばあるURLにアクセスすれば参照用のデータを返すような処理を作ります。(それ自体は従来通りの技術で実現可能だと思います)
次にスマホアプリからそのURLにアクセスし、受け取ったデータをスマホ上で表示するような処理だけ作れば参照アプリは完成です。

それを取っ掛かりに、例えばあるURLにパラメタを渡すことで可変のデータが返却されるようにしたり、同様にデータの追加、更新、削除ができるようにしたりすれば、立派なスマホアプリの完成です。

既存のサーバサイド処理に手を加えるのが容易であれば、スマホアプリの開発は画面を開発すれば良く、負荷はさほど高くありません。

投稿2017/08/22 09:02

akabee

総合スコア1947

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shori0128

2017/08/22 15:08

>akabee様 サーバー側にAPIを用意し、スマホアプリ側からAPIを介することで目的とする動作を実現できました。 ありがとうございました。
guest

0

CordovaでODBC接続のできるネイティブプラグインで接続すれば直接データベースにつなぐことができるかと思いますが、基本的には他の方の回答のように既にあるJavaやPHP等のWebシステムのサーバー側でJSON等でやりとりを行うAPIを準備してWebアプリで必要に応じてajax通信を行って背後にあるDBデータを活用します。
Cordovaの開発が初めての場合は開発環境構築もある程度難度がある作業なので、Cordovaをベースに開発環境を提供してくれるMonacaやMonaca LocalKitを使うと開発環境は楽に構築できるので、エンターテイメント系は判断が必要ですが業務システム開発の場合はおすすめです。

投稿2017/08/22 10:17

aro10

総合スコア4106

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shori0128

2017/08/22 15:11

>aro10様 ご回答ありがとうございます。 参考にさせていただきます。
guest

0

WEBアプリケーション側にAPIを用意し、スマホからはそのAPIを実行すればどうでしょうか?

投稿2017/08/22 09:04

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shori0128

2017/08/22 15:10

>skuromaku様 ご回答ありがとうございます。 いただいた内容の通り実装して、目的とする動作が実現できました。
guest

0

WebViewを使えば、アプリの中でWeb表示ができます。
要は、アプリ内でブラウザを動かすようなイメージです。いわゆる「側だけアプリ」「ガワネイティブ」ってやつです。

投稿2017/08/22 08:56

PineMatsu

総合スコア3579

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問