ソフトバンクのAndroid simでsimフリー端末を使いたかった備忘録
タイトルに少し語弊がありますが、SoftbankのAndroid simを使っている状態からどうすればsimフリー端末で通信ができるようになるのかという話です。
※ 自分で試した結果を載せているだけですので、万が一通信料などが多く請求されたとしても責任は負えません。あくまで自己責任でお試しください。
まとめ
結論としては
という流れでした。
現状
所有端末は3台です。
IMEI制限について
これはSoftbankのみですが…
Androidを契約している場合だと、別端末にsimカードを差し替えても通信ができないという制限がかけられています。
これは謎の制限ですね…。
Softbankにはどうやらsimカードが3種類あるようで、このうち2種類のsimカードではsimフリー端末で通信が可能なようです。
ですが、単純にマルチusimに変更してもらえばよいのかというとそうではありません。 このマルチusimカードはスマートログインなどのsoftbankの付帯サービスが利用できないようなのです。
naitogarashi.com前田です。これまでのご案内と重複し恐縮ですが、USIM単体契約(SIMフリー端末契約)の場合は、スマートログインの設定ができない仕様となっております。また、社内で共有はさせていただいておりますが、仕様の変更など、ご案内できる情報はございません。(1/2)
— カスタマーサービス担当 (@SBCare) May 20, 2017
yahooプレミアム会員費が無料などの特典目当ての方もいる(自分含む)ので、これでは少し厳しいですね。
iPhone用のsimカードでは問題なくsim差し替えができるようですので、 simロック解除済みのiPhone(元au)を持ち込んで機種変更をしました。
実際の手順
iPhoneへの持ち込み機種変更を行う
「持ち込んだiPhoneに機種変更をしたい」と店員さんに尋ねると、少し戸惑いながらも対応して頂けました。
iPhoneで通信ができるところまで店員さんと一緒に確認する流れでしたので、この段階でsimフリー端末を持ち込むのはやめておいた方が良いかもしれません。
3240円の手数料が別途かかることと、ソフトバンクの保証サービスやApp passが解除されることは注意しましょう。自宅にてsimカードを差し替える
その後、自宅にてiPhone用simカードを目的のsimフリー端末に差し替え、無事に通信が行えました。 ソフトバンクの付帯サービスも問題なく利用できています。
APN設定 [9/20追記、2019/10/26修正]
APN設定をしないとそもそもネットワークが拾えないので追加しておきます。
項目 | パラメータ |
---|---|
APN | jpspir |
プロキシ | 未設定 |
ポート | 未設定 |
ユーザ名 | sirobit |
パスワード | amstkoi |
サーバ | 未設定 |
MMSC | http://mms/ |
MMSプロキシ | smilemms.softbank.ne.jp |
MMSポート | 8080 |
MCC | 440 |
MNC | 20 |
認証タイプ | PAPまたはCHAP |
APNタイプ | default, mms, supl, hipri |
APNプロトコル | IPv4 |
APNローミングプロトコル | IPv4 |
※ APNタイプが記事によって異なるようです。 自分はこの設定ですが、うまく疎通が取れない場合は他の記事を参考にするとよいかもしれません。
参考URL
Processingを外部エディタ(Atom)でどうにかする
公式のエディタもいいんですけどね…
Environment (IDE) \ Processing.org
(もっと甘やかして欲しいので)外部エディタで書きたいところ
最近Atomを使い始めたのでAtomでコードを書いてビルドまでしたい…
Processing-javaをインストール
「ツール」メニューより選択
パッケージをインストール
atom.io
atom.io
atom.io
この辺を入れておくと良いらしい
以下のコマンドでインストール
$ apm install processing processing-autocomplete processing-language
Settingする
package一覧からProcessingを探して設定を開く
その後, Processing-executableに
$ which processing-java
の結果を設定します
"pbcopy" コマンドにパイプで繋ぐとクリップボードにコピーしてくれるらしい, 便利
実際にビルドしたところ
"ctrl+alt+b" でビルドした結果
補完もしてくれるし, ハイライトも素晴らしいですね…
pdfからコピーした英文を翻訳機に投げやすい形に整形する
英文をPDFからコピーすると改行が含まれることがあるので、整形するスクリプトを簡単に書きました。
よくある処理の記録機能を使って置換機能自体をマクロ化すればよかったんですが、環境によってはうまく動かなかったので…
こんな感じの処理になると嬉しいですね。
Before
You are not the person that we
choose. Thank you for your
understanding.
After
You are not the person that we choose.
Thank you for your understanding.
メモ帳の代わりにMeryというエディタを使っているのですが、そのエディタのマクロがJavaScriptでかけるそうなので乗っかります。
処理内容
特に難しいことはしていなくて
- 改行を半角スペースに置換
- 文章の最後で改行
の2つの処理を行っているだけです。
( もっときれいな書き方があると思います )
使い方
- Meryをインストール ( MeryWiki )
- 上のプログラムをダウンロードするなりコピペするなどしてどこかに置いておく
- マクロ→カスタマイズより追加
ツール→オプション→キーボードでショートカットキーを設定するとなお良いかも
swiftで回文判定
swiftを勉強する機会があったので、忘れないうちにメモ
回文判定については最後にしか触れていない上、大したことはしていません。
ちょっとしか触っていないので簡単なものばかりですが、はてなブログのシンタックス・ハイライトのテストも兼ねて載せておきます。
変数宣言
letで定数宣言、varで変数宣言
宣言時に値を入れておけば、型は明示的に宣言する必要はないらしい…
let hoge : Int // Int型の定数 var huga = 10 // Int型の変数 var tokaiList : [String] = ["Tokyo", "Osaka", "Nagoya"]
制御文
if文
var score : Int = 59 if score < 60 { print("不合格") } else { print("合格") } /* 実行結果 不合格 */
for文
var tokaiList : [String] = ["Tokyo", "Osaka", "Nagoya"] var id : Int // その1 for id = 0; id < count(tokaiList); id++ { println(tokaiList[id] + " is Large City.") } // その2 for id in 0...count(tokaiList)-1 { println(tokaiList[id] + " is Large City.") } /* 実行結果 Tokyo is Large City. Osaka is Large City. Nagoya is Large City. Tokyo is Large City. Osaka is Large City. Nagoya is Large City. */
while文(do-while)
var cash = 500 do { let price : Int = Int(arc4random())%100 + 100 // 100~200円のジュース cash = cash-price println(String(price) + "円のジュースを買いました.") } while cash > 200 /* 実行結果 152円のジュースを買いました. 166円のジュースを買いました. */
関数宣言
func 関数名 ( 引数:型 ) -> 戻り値の型 { // 処理 }
と宣言するらしい
func warikan(fee: Int, nPerson : Int) -> Double { var res = Double(fee)/Double(nPerson) return res } var payment : Double = warikan(10000, 6) println("お代は1人\(payment)円です.") /* 実行結果 お代は1人1666.66666666667円です. */
ちょっとした関数
文字列を文字配列に変換
func charToArray (str:String) -> [Character] { var res : [Character] = [] for i in 0...count(str)-1 { res.append(str[advance(str.startIndex, i)]) } return res } let lchar = charToArray("olympi") var vchar = lchar+"c" println(vchar) /* 実行結果 [o, l, y, m, p, i, c] */
配列内の要素の種類をカウント
func variety(array:[Int]) -> Int { var res:Int = 0 for i in 1...count(array)-1 { let before = array[i-1] let current = array[i] if before != current { res += 1 } } return res } let intArray = [1, 2, 2, 3, 4, 4, 5, 6, 7, 7, 7] var result = variety(intArray) println(result) /* 実行結果 6 */
回文判定
func isPalindrome(str:String) -> Bool { var rev = String(reverse(str)) if str == rev { return true } else { return false } } var result = isPalindrome("testset"); print(result) /* 実行結果 true */
はてなブログのシンタックスハイライト使うなら、いっそGistでコードを埋め込んでやればいいのでは…
しかも、回文判定は空白や文字の大小に対応していないので
No lemon no melon.
のような有名な回文を判定できない始末
lowercaseにして余計なスペースやら消してしまえばいけそうだけど、そのうちちゃんと書きます
というか、swiftで文字列扱うの面倒では
参考
Microsoft Word 2016 for Macで数式挿入ショートカットキーを使う
LaTeXを使おうという人もいますが、簡単な文章ではwordを使いたい…
いちいち挿入→数式を選択するのも面倒ですし、何度も数式を挿入する場合にはショートカットキーを使いたくなります。
Windowsバージョンでは「Alt」+「=」のショートカットキーで数式を挿入できる(らしい)のですがMacでは対応していない様子。
自分で設定するしかないようです。
ショートカットキーを設定する
全く同じ質問が投稿されていました。
Wordの「ツール」タブ → 「ショートカットキーのユーザ設定」を選択
分類 : すべてのコマンドから「EquationInsert」を選択
任意のショートカットキーを割り当ててOKします。
(他のコマンドにもキー割り当てができるので便利そう)
その後、設定したキーを入力すると数式挿入できます(できました)。
Visual Studio Community 2015を日本語化する
少し前にVisual Studio Community 2015を入れていたものの、
今になって突然使う用事ができてしまったので、日本語化しました。
大したことはしていないですが、別の端末に入れる時に確認するようにメモ。
手順としては
- Language Packを入手
- インストール
- 言語を設定する
くらいで済みました。
Language Packの入手
Download Microsoft Visual Studio 2015 Language Pack from Official Microsoft Download Center
ここからvs_langpack.exeをダウンロード
言語パックのインストール
ダウンロードしてきたexeファイルを実行します。
特に難しい操作はしていません。
日本語に設定する
インストールが完了しても
設定を変えていないとEnglishのままなので設定をいじります。
Visual Studio 2015 Communityを起動して、Tools -> Options...を選択
Environment下のInternational SettingsからLanguageを日本語に設定します。
再起動するように言われるので再起動をすると無事日本語化されました。
日本語パックのダウンロードに失敗したという記事も見かけたので
うまくいかない場合はvs_langpack.exeの中身が問題なのかもしれない。。。