Android

Deep Link / App Links / Universal Link / Firebase Dynamic Links 使い分け

アプリを作るとき、URLをクリックしたときに、アプリがインストールされていれば、アプリを立ち上げたい。 このとき最も良い方法をまとめます。 Deep Link 用途 特定の技術を説明した言葉ではなく、アプリの特定のページを開くことが出来るリンクを表す。 実…

Android で スタティックライブラリを利用する

Android の開発時に、C++などで作られた 静的ライブラリ〜.a や、共有ライブラリ〜.so を利用したい時。まず、ビルド設定方法は1つではない。CMakeLists.txt を使う方法、Android.mk を使う方法と、やり方が選べる。また、 so ファイルは、アプリケーション…

ViewPager 利用時、 FragmentManager 内に Adapterで返しているより少ない数しか入っていない

FragmentPagerAdapter で 返すデータ数が、実際に3つあっても、 タブで1番目に切り替えを行うまで、FragmentManager の中には、2つしかFragmentが入っていないような動きになっていた。 List<Fragment> datas = getSupportFragmentManager().getFragments(); // 2つだ</fragment>…

GridViewのCell などのサイズを比率で指定する

GridView は、横幅が自動計算されるため、比率を合わせるには、設定時に計算する必要がある。FrameLayout を入れていた場合は、以下のように onMeasure を オーバーライドし、height を再計算する。 xml の 属性に、layout_height_ratio="0.8" のように指定…

android で view のサイズを取得する

void checkSize (View view) { final Point size = getWindowSize(); // window のサイズを 通知する view.measure (size.x, size.y); // サイズ取得! final int w = view.getMeasuredWidth(); final int h = view.getMeasuredHeight(); } Point getWindowS…

アプリでシェアするために Facebook の申請をする時

審査期間は、今は1週間かからない程度です。 アプリが動く状態になっていなければなりません。 シェア文言にデフォルト文言を入れるのが目的の場合 iOS OS の機能を使ってシェアしてください。 規約違反ですが、問題なくデフォルト文言と画像が設定できます…

Android で minSdkVersion は 対応しているのにインストール出来ない場合

N-06D のOS は 4.0.4 で minSdkVersion に 14 を指定しているのに、 インストール出来なかった。これは、N-06D のカメラに、オートフォーカスがないことが原因で、 permission に CAMERA を追加すると、自動でオートフォーカス必須に設定されてしまう。 そこ…

ScrollView の 影を消す

<ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" android:paddingTop="10dp" android:overScrollMode="never" > </ScrollView> android:overScrollMode="never" これで消えます。

Android で getMap() が null になる

これでは GoogleMap が null になってしまう。 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); setupMap(); } private void setupMap () { final FragmentMa…

Unity の AndroidManifest.xml や Info.plist は信用できない

Unityはビルド時に、ソースコードやビルド設定から AndroidManifest.xml や Info.plist を書き換え、自動設定するが、 正しく反映されない項目があるので、 自分でビルド前(ビルド後)に設定する必要がある。