2015年11月24日火曜日

【AndroidStudio】始めに

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

最近は目下MicrosoftAzureの利用方法を検証中ですが、業務都合により急遽Android開発環境「AndroidStudio」に切り替えます。

Eclipseプラグインのサポート終了


さて、事の発端はEclipseのAndroidプラグインのサポート終了でした。


うっ……。きっつー……。
長年の間、Androidの開発環境と言えば、それは「Eclipse + Androidプラグイン」でした。
GoogleがそのAndroidプラグインのサポートを辞めてしまうので、間もなくこの環境は過去の遺物と化してしまいます。

その代わりにGoogleが公式開発環境として掲げるのが、この「AndroidStudio」なわけです。

しかしですね、私みたいに「Eclipse以外で開発なんてやったこと無いよ!!(=やりたくねえ)」ってエンジニアは星の数ほどいると思いますよ。
容赦無く切り捨てられてしましました。無念。。。

でも、Googleの気持ちも分からなくは無いですね。
だって、「Eclipse + Androidプラグイン」の構成って確かに動作がイマイチな部分もありましたからね。

  • Javaのバッチ開発⇒Eclipseで
  • JavaのWebアプリ開発⇒Eclipseで
  • JavaのAndroid開発⇒もちろんEclipseで!!

みたいな感じに、「同じJavaだから全部同じEclipseで」っていう発想が限界に来ていたのでしょう。
特にAndroidは独自の仮想マシンを積んだりシミュレータを積んだりと、他の開発と比べても特に異質なものです。
色々と重かったり、互換性やなんやらでデザイナーが表示出来なかったり……。
GoogleがAndroidに限った特化環境を欲したのも無理からぬ話と言えば納得です。

残念ではありますが、他ならぬGoogle様が仰るのだから従うしかありませんね。

ちなみに、それでもEclipseで開発を続けたい人も当然おり、Andmoreという延命プロジェクトが進行中のようです。


往生際が悪いですね……。
面白い試みだとは思いますが、そんなことやってたらそれだけAndroidStudioへの移行が遅れるではありませんか。
今はAndrodid勢は一丸となって技術を推進していかなければならない時なのですから、そんな反乱分子みたいなことはやってないで、そのパワーはAndroidStudioのプラグイン開発にでも使って頂きたいです。

これをお読みの皆さんはくれぐれも「もうちょっとEclipse使えないかな?」なんてセコいことは考えず、さっさとAndroidStudioへと移行し、人柱となって下さい。

そもそもAndroidStudioって何だ?


しかし、私もEclipse人間である都合上、急にAndroidStudioなんて出されても困るのは事実。
ちょっとAndroidStudioの背景を勉強しておきましょう。

調べた所によると、AndroidStudioはココに至るまで概ね以下の歴史を辿っているようです。

  • 2013年:発表
  • 2014年:ベータ版
  • 2015年:公式ツール化

2015年現在では最新鋭の開発環境です。
最新鋭と言えば聞こえは良いですが、要するにそれだけまだまだ発展途上の環境と言い換えることが出来ます。
色々と問題が起きることは目に見えていますが、やるしかありません。頑張って行きましょう。

さて、更に調べて見ると、AndroidStudioはEclipseとは全然別物だということが分かってきます。

AndroidStudioは「IntelliJ IDEA」という別の開発環境をベースにAndroidに最適化した環境とのことです。

IntelliJ IDEA


では、AndroidStudioの元となっているIntelliJ IDEAとは何でしょう?

ZeroTurnaround社の2012年の調査報告によると、世界第二位の人気を誇る開発環境にしてEclipseの第一のライバルです。

  1. Eclipse:76%(IBM)
  2. IntelliJ IDEA:28%(JetBrains)
  3. Netbeans:17%(サンマイクロシステムズ⇒Oracle)

76 + 28 + 17 = 121% って100%超えてるじゃねえか!!って思いますが、きっと複数の開発環境を使い分けているチームもいるということでしょうね。
しかしEclipseが圧倒的第一位であることは間違いありません。

しかし、統計を見ると全体の3割弱はIntelliJを使っているって意味になりますよね。
でもその割にはIntelliJを使ってる現場なんて全く聞いた事が無いぞ。単に私の住む世界が狭いだけでしょうか?

それはですね、特の根拠はありませんが、多分日本は世界標準よりも圧倒的にEclipseが強い」、これだと思います。

結構あるんですよ。
世界の人気傾向と比べて日本はちょっと独自文化を築いているというパターンが。
きっとIntelliJもこのパターンなんだと思います。

終わりに


と言うわけで、AndroidStudioの正体はIntelliJ IDEAだということが分かりました。
そして日本での普及は低い……。

となると、今後に調べていく上での心構えも足ってくるというものです。

  • AndroidStudioのベースはIntelliJ IDEAである。
  • AndroidStudioで調べて分からない場合はIntelliJ IDEAで調べる。
  • 日本語情報が少ないので英語サイトもバンバン読むべし。

こんなところでしょうか。
次回以降もしばらくはAndroidStudioの勉強を進めていきます。

2015年11月16日月曜日

【AzureでSugarCRM】日本語化

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

現在はAzureでSugarCRMを使用可能にしようと画策しています。

英語



英語だ!!

これじゃ全く使い物にならないぞ……。
日本語マニュアルはあるんですけど、肝心のどうやったら日本語に出来るのかが見つからない……。


日本語化プロジェクトは閉鎖してるし。


参ったな、こりゃ。。。
最初から日本語のCRMを導入したいところですが、Azureでやるという制約がある以上、何としてでもSugerCRMじゃなきゃ困るんですよ。

GitHubを探しても無い。

6カ国語しか対応していないのか?
過去には日本語パックがあったはずなんですよ。

Japanese Language Packはどこ行った……。

まあ、結論としてはネットの海から拾ってきました。

  • SugarCE-JLP-6506.zip

日本語化作戦

最新バージョンでは無いようですが、これでもそこそこは日本語化出来るでしょう。
しかし、古いバージョンのパッチを最新バージョンに宛てようとしても出来ませんので、小細工を行います。

まず、展開しているアプリのバージョンを確認。


Aboutのページを見ると「Version 6.5.22 (Build 1055)」となっています。
これがAzureのバージョンのようです。

SugerCRMの最新バージョンは2015年11月現在で7.6ですから、随分と古いですね……。
どうやら2013年頃から止まっている模様。
まあ、タダだし仕方ありませんね。

ともかく、これで展開環境のバージョンが分かりました。
次に、日本語化パッチをゴリ押しで宛てる為の小細工を行います。

「SugarCE-JLP-6506.zip」を解答すると以下ファイルが出てきます。


ここから「manifest.php」を開きます。

そこに「acceptable_sugar_versions」という項目があり、正規表現でそのパッチの対象バージョンを指定出来るようになっています。
これを無理矢理Version 6.5.22書き換え!!


終わりましたら、再びZip圧縮して元に戻して下さい。
これでバージョン変更完了ッ!!

ここまで来たら後は簡単です。
Adminページを開きまして、Module Loaderページへと進む。


その先はファイルアップロード画面ですので、先ほどのZipファイルをアップロードして下さい。


これでパッチ適応完了です。
一回ログアウトしてログイン画面に戻りますと、選択メニューに日本語が選べるようになっています。


そしてログインしますと……。


やった!!
日本語化成功です。

検証

さて、無理矢理過去のバージョンの日本語化パッチを宛ててしまったのでどこかバグっていても不思議ではないのですが、
どうやら九分九厘は正常に日本語化出来ているようですね。

それでももし上手く日本語化出来ていない部分があったら、自分で改修すれば良いでしょう。
日本語化パッチの正体は以下ですから。


単純にラベルを日本語に置換しているだけのようです。
これなら自分でも何とかなりそうです。

終わりに


さて、これでめでたく無事にSugerCRMを使用開始出来そうです。
少し触ってみましたが、ちょっと動作が重い点が気になるものの、それ以外は普通に使って行けそうですね。

最後に、私が上記で改修した日本語化パッチを以下に置いておきますので、
これからAzureでSugerCRMを活用した方がいらっしゃいましたら、ご自由にご利用下さい。


クラウドは積極的に活用していきたいものですね。

2015年11月9日月曜日

【AzureでSugarCRM】アプリ作成

株式会社ジェニシス 技術開発事業部の遠藤 太志郎(Tacy)です。

前回よりAzureの「最初からツールがインストール済み」というSaaSならではの長所生かし、
プロジェクトのスモールスタートを行っています。

現在はSugarCRMのセットアップ中です。

アプリ作成

では、さっそくアプリを作っていきます。
まあ、作るだけなら一瞬なんですが、一応画面キャプチャを。
特記事項無し。




これで完成ですが、ここから完了まで数分の待ち時間が発生します。
ブランクのプロジェクトを作った時は本当に一瞬だったのですがね。

恐らく、裏側で仮想マシンのコピーを行っているか、もしくはSugarCRMのインストールを行っているものと思われます。
裏側がどういう作りになっているのか大変気になる所ですが、今回はそこまで深掘りするのはやめておきましょう。

「深く分かっていなくても問題無く使える」というのがクラウド系アプリの長所の一つですからね。

そうこうしているうちに作成が完了しました。


ログイン

さて、ここで問題が。
ログインIDとパスワードが分からないぞ……。
そんなの設定してないし……。

ここはちょっとSugerCRMの公式サイトに行ってみましょう。




バッチリ書いてありました。初回ログインはID:admin/PW:adminだそうです。
これでログイン出来……ねえよ!!

参ったな、こりゃ。一体どうなってんの????

そこで私の勘が冴えました。


これ。
アプリ展開途中で「デプロイの設定」という所でパスワードを入れています。
コレなんじゃないでしょうか。


  • ID:admin
  • PW:アプリ作成時のパラメータ

正解!!


なるほど、確かに


  • 普通のSugerCRM:セットアップが終わってからネットに繋ぐ。⇒その時にはパスワードも変える。
  • AzureのSugerCRM:最初からネットに繋がっている。

ですから、初期状態がID:admin/PW:adminでは垂れ流しもいいところです。
ここはAzureが気を利かせてカスタマイズしてくれたのですね。

さて、無事にログイン出来ました。
ここから先は公式サイトを参考に進めていきましょう。


無事に初回セットも完了しました。


さて、そろそろお気づきの方もいらっしゃるかと思いますが、公式サイトは日本語なのに、Azureの方は英語なのです。

SugerCRMは日本語パッケージを用意していますが、Azureのデフォルトは英語だけ。
日本語化は自分でやらなきゃいけないのです。

これが英語圏ではない人間の辛さ……。
基本、クラウドって英語しか対応してません。
アプリも、ユーザーガイドも、全部英語、英語、英語。

気合い入れて英語を読む覚悟で臨んで下さい。

終わりに

次回はサイトの日本語化にトライしてみたいと思います。