備忘録

備忘録

Java

Androidの共有ライブラリをAndroid以外のOSで利用する方法

Ⅰ. はじめに Ⅱ. やり方 1. 共有ライブラリのサンプルプログラムを書く 2. 1をコンパイルする 3. 共有ライブラリを利用するサンプルプログラムを書く 実行結果 FAQ Q. unidbgはスレッドセーフですか? Q. Java以外はありますか? 参考 Ⅰ. はじめに AndroidはL…

JavaRMI で HelloWorld する方法

Ⅰ. はじめに タイトルの通り「JavaRMI で HelloWorld する方法」です。 Ⅱ. やり方 1. サンプルプログラムを書く com/company/client/Client.java package com.company.client; import com.company.core.Common; import com.company.core.IHello; import java…

Androidで複数キーでソートする

Ⅰ. はじめに この記事ではStream APIを利用したソートとLightweight-Stream-APIを利用したソートの2つを紹介します。 Java8で追加されたStream APIとComparatorを使ったソートはAndroid N (Android 7.0)以上でなければ動作しません。 Android N 以下の場合は…

JavaでJSONを扱う(GSONの使い方)

Ⅰ. はじめに Ⅱ. 使い方(クラスを作る場合) 1. JSON を Javaのクラスに変換する 2. Main.java 3. 実行結果 Ⅲ. 使い方(クラスを作らない場合) 1. Main.java 3. 実行結果 参考 Ⅰ. はじめに JavaでJSONを扱う方法です 最近人気のGoogleが開発しているライブ…

Javaでokhttpを使って全ての証明書を許可する

Ⅰ. はじめに オレオレ証明書などは以下のエラーを吐いて弾かれてしまいます。 デバッグ時など、とりあえず全部許可したいときのやり方です。 Exception in thread "main" javax.net.ssl.SSLHandshakeException: sun.security.validator. ValidatorException:…

Java UUIDをシードにして乱数を発生させる

String uuid = UUID.randomUUID().toString(); // uuid = "9115d2c8-a3f4-4c4e-9c44-e65b6f483f90" long seed = Long.valueOf(uuid.substring(0, 8), 16); Random random = new Random(seed); // 0~9999 の乱数 Integer number1 = random.nextInt(10000); /…

Android 非同期処理を強制しない方法

Ⅰ. はじめに Android 3.0以降では ネットワーク処理をメインスレッドで行うと以下の例外を吐くようになりました。 java.net.SocketException: android.os.NetworkOnMainThreadException Ⅱ. 強制しない方法 以下をonCreateなどに追加するとメインスレッドでネ…

Android アプリ内課金を実装する

Ⅰ. はじめに 「課金してアプリ内に表示される広告を消す」 「課金してアプリ内の石を購入する」 などの実装方法です。継続課金(定期購入)については具体的に触れませんが、 この記事を一通り行った後公式ドキュメントを見れば簡単に実装できます。備忘録と…

JavaでAES

public byte[] AesEncrypt(String str) throws Exception { // IV無し // ブロック暗号モード: ECB // パディング: PKCS7 Cipher cipher = Cipher.getInstance("AES"); cipher.init(Cipher.ENCRYPT_MODE, "0123456789ABCDEF"); // Keyは16文字(32bit) retu…

hoge-1.0.0-SNAPSHOT.jarにメイン・マニフェスト属性がありません

JavaでMavenを使ってる時の話。 java -cp hoge-1.0.0-SNAPSHOT.jar abc.defabc.defにはmainがあるクラス名(パッケージ込み)を指定する

APK(smali)を弄る

用意するもの・JDK ・apktool.jar https://code.google.com/p/android-apktool/downloads/list手順# デコンパイル 1) java -jar apktool.jar d hoge.apk# smaliを弄る ○弄るときに役に立つもの一覧 ・Dalvik opecodes http://pallergabor.uw.hu/androidblog/…