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

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

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

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

0回答

297閲覧

Android レイウアトとプログラムのつくりについて

Android_Baby

総合スコア9

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2019/07/25 03:05

編集2019/07/25 10:56

※タイトルも質問内容も分かりづらいかもしれませんが、ご協力お願いできますでしょうか。
指摘を頂いたので、書き方を修正しました。
■前提
・アプリの画面(MaingActivity)のレイウアトで、AndroidOS:5.0以上の場合は、Webkit.Webivewを利用し、5.0未満はCrosswalkを利用します。
・その他は全く同じレイアウト

イメージ説明

■内容
以下のつくりを考えているのですが、Android経験者の方から見て、どうなのか指摘やアドバイスを頂けたらと思っています。
※こうした方が汎用的に使えるなど。

〇レイウアト

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:descendantFocusability="blocksDescendants" android:orientation="vertical">

<!-- ヘッダー --> <include layout="@layout/actionbar_custom" android:id="@+id/toolbar"/> <!-- webkit.webview --> <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone"/> <org.xwalk.core.XWalkView android:id="@+id/xwalkWebView" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"/> <!-- フッター --> <fragment android:id="@+id/tabBarFragment" android:name="jp.co.pal_system.tabesoda.main.fragment.TabBarFragment" android:layout_width="match_parent" android:layout_height="@dimen/tabHeight" />
</LinearLayout>

〇MainActivity
// 画面項目
WebView topwebview;
XWalkView topXwalk;

・表示の切り分け判断
private void initWebView(){
if (WebViewUtil.isShowCrosswalk()){
// ■AndroidOS:5.0未満の場合
topXwalk = findViewById(R.id.topXwalkWebView);
topXwalk.setVisibility(View.VISIBLE);

}else{ // ■AndroidOS:5.0以上の場合 topwebview = findViewById(R.id.topWebView); topwebview.setVisibility(View.VISIBLE); topwebview.getSettings().setUseWideViewPort(true); topwebview.getSettings().setLoadWithOverviewMode(true); topwebview.getSettings().setJavaScriptEnabled(true); topwebview.setWebViewClient(new CustomUrlHandleWebClient()); topwebview.addJavascriptInterface(new JavaScriptInterface(topwebview), "Apps"); } }

※上記のように、すべてWebViewに関する処理をOSのバージョンによって、処理を切り分ける必要があるのですが、MainActivityですべて行うつくりを考えています。

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

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

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

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

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

y_waiwai

2019/07/25 06:10

で、しつもんはなんでしょうか
退会済みユーザー

退会済みユーザー

2019/07/25 10:36

> 上記のような考えて、作成しようとしているのですが、他のAndroid経験者の方の経験や知識等をご共有して頂ければと思います。 Google先生に聞いてください。 そもそも質問じゃないし・・・
Android_Baby

2019/07/25 10:59

>y_waiwai >yukke_ わかりづらくてすみません。AndroidアプリのPGを行っているのですが、自分のつくりに自信がなく、どういったらつくりにしたらいいのか?という判断に困っています。
退会済みユーザー

退会済みユーザー

2019/07/27 06:54

自分であれば、メンテナンスが終了して何年も経ってるようなライブラリは使いたくないです。 後、今さら4や5に対応したくないです(とっくにOSの更新が終わってるので)
Android_Baby

2019/07/29 07:48

>yukke_ 私としても対応したくないですが・・・ アプリ利用ユーザーにv4,v5の割合が2割程度(?)いるため、切るに切れない状態でして・・・(顧客要望でもあるのですが。 試行錯誤やってみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問