Xamarin Part4 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/05/08(月) 07:40:04.29ID:KaTWGm/F
C#を用いてクロスプラットフォームアプリケーション(iOS Android Mac)を
を開発するためのライブラリおよび開発環境です。
Macの人は Xamarin Studio、Winの人は Visual Studioで開発できるよ!

公式
http://xamarin.com/

前スレ
Xamarin Part3 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1483089021/


Xamarin Part2
http://echo.2ch.net/test/read.cgi/tech/1480602653/

Xamarin Part1
http://echo.2ch.net/test/read.cgi/tech/1359861574/
2017/06/06(火) 21:54:29.47ID:J5tWSL33
お客さんは姫のおっぱい見れれば問題ないだろ
2017/06/06(火) 22:04:46.06ID:p3gGeovB
触れれば問題ないです
641デフォルトの名無しさん
垢版 |
2017/06/06(火) 22:29:33.99ID:QiRTngQD
>>638
Javaはどうしたんだよ
2017/06/07(水) 00:34:35.92ID:IzHmsoCd
>>638
ねえねえJavaにKotlinが追加されたんじゃなかったっけ?
2017/06/07(水) 11:32:34.76ID:UUJgjKBL
jetbrainsがXamarin iOSに対応したみたいですが、試した方いますか?

https://www.jetbrains.com/rider/download/
2017/06/09(金) 10:26:29.97ID:dNGjxIOI
とうとうVS2015でのXamarinクロスプラットフォームのテンプレートからWCAプロジェクトが外された・・・
Windows用はUWPだけにしろという事なのか・・・
2017/06/09(金) 11:04:40.33ID:j28Be/P6
WCAをBingでググっても意味が分からなかったよ
2017/06/09(金) 11:12:03.85ID:Tx9231sP
すでにandroid studioが入ってる環境にVS2017のXamarin入れたら
andoridSDKがまたインストールされた

SDKは共用できないのか?
出来たとしてもともとインストールされていた2.3や4.0用のSDKを使っていいのか?
どちらかでupdateしたら両方とも最適化が利くのか?
2017/06/09(金) 11:14:40.51ID:dNGjxIOI
>>645
すまん。CWAのtypo
2017/06/09(金) 11:53:14.34ID:tD2+4rqH
>>646
環境変数で設定しているSDKを使うだけだからインストール元を気にすることに意味はない
2017/06/09(金) 15:03:04.98ID:Tx9231sP
>>648

環境変数を設定しなおすとVS2017でも2.3や4.0のSDK選択肢が出てくるのか?
2017/06/09(金) 15:28:11.62ID:tD2+4rqH
>>649
APIレベルの設定はAndroid SDKマネージャー
VS2017とかはそもそも関係のない話
2017/06/09(金) 15:45:13.83ID:tD2+4rqH
http://i.imgur.com/TFxkPpZ.png
2017/06/09(金) 15:45:53.42ID:dNGjxIOI
>>649
2.3や4.0に対応したXamarin.androidがあれば選択できる。
が、そんなものは無いから無意味な妄想だな。
2017/06/09(金) 19:54:58.19ID:lbGCAKqR
C#ではじめるモバイルアプリ開発ハンズオンシリーズ
GitHub - ayatokura/Xamarin_Azure_HoL
https://github.com/ayatokura/Xamarin_Azure_HoL

勉強会とかどうでもいいことより、こういう形のほうが遥かに良い。
もっと進めてほしい。
2017/06/09(金) 20:24:35.24ID:Tx9231sP
何故github?
2017/06/09(金) 20:31:47.95ID:/tTjohUU
>>654
おまえ馬鹿だろ?
2017/06/09(金) 22:10:25.90ID:Tx9231sP
>>655
煽る前に頭使えよ
元になるテキストベースでバージョン管理するなら便利だけどPDFじゃ意味ないでしょ
2017/06/09(金) 22:11:43.20ID:Tx9231sP
>>655の頭のいい解説が早く来るといいなw
2017/06/09(金) 22:14:44.81ID:4UyEKzeQ
煽られて連投とか痛々しい
2017/06/09(金) 22:16:36.71ID:Tx9231sP
>>658
お前でもいいから解説しとけ
2017/06/09(金) 22:20:13.41ID:XdG+/4N5
VSTSはプライベートリポジトリ向けだからgithubの方が向いてるでしょ
2017/06/09(金) 22:24:08.85ID:Tx9231sP
バイナリやコンテンツがPDFだけみたいな成果物をgithubに置くのは好ましくないって言われてるけど
2017/06/09(金) 22:33:16.37ID:ikXkOhBd
>>661
別にこの場合はバージョン管理が目的なわけじゃないから構わんだろ
2017/06/09(金) 22:33:55.34ID:MqTBLfEe
>>661
いるよね、こういう杓子定規的なやつ
2017/06/09(金) 22:34:12.51ID:XdG+/4N5
PDF数個くらいで大して遅くならねーよ
それよりもgithubはWebページ上でのPDF表示に対応してて見やすいな
2017/06/09(金) 22:37:49.75ID:Tx9231sP
IDコロコロ
2017/06/09(金) 23:56:57.76ID:4UyEKzeQ
イメージファイルはバイナリだからgitで管理しちゃいけないとか本気で思ってそう
2017/06/10(土) 00:00:17.22ID:FRc8CTCo
俺も原則バイナリはgithub管理すべきじゃないと思うけど…
2017/06/10(土) 00:00:28.30ID:Q+Cf3HLO
どうでもいいから姫の露出度高い画像貼れ
2017/06/10(土) 00:27:50.48ID:xWSVspGU
リポジトリはすでにforkされててmdはプルリクが来てる
pdfにもプルリク送らせる気か?

送られてもどこが間違ってるのかわからないと言う
2017/06/10(土) 00:32:45.11ID:b08RhG51
バージョン管理関係なしにただの公開アップローダーとして使っても別に問題ないだろ
2017/06/10(土) 00:40:41.65ID:pv/+u9Ym
全然問題ない
2017/06/10(土) 01:30:55.83ID:7CPx4yEU
Xamarinを使わない場合
1. iOSネイティブで作る
2. Androidネイティブで作る

Xamarinを使う場合
1. Xamarin.Formsで作ってみるがうまくいかないことが分かる
2. Xamarin.iOSで作る → ネットの情報少なくて時間掛かる
3. Xamarin.Androidで作る → ネットの情報少なくて時間掛かる

あれ?Xamarinを使った方が手順が一つ増えてね
2017/06/10(土) 01:38:55.95ID:LvQeTUom
XamarinやるとするならXamarin.Forms一択だろ。
2017/06/10(土) 02:17:01.09ID:7CPx4yEU
Xamarin.Formsでプロジェクト作ってもXamarin.iOSとXamarin.Androidのプロジェクトできるじゃん
Xamarin.Formsで難しい所はそっちに書いていかないといけないっていう
2017/06/10(土) 02:22:54.32ID:b08RhG51
>>674
はいはい、お前さんの言うことはまったくもって正しいよ
分かっていない他の奴らの方が頭おかしい

こう言ってもらえれば満足するのか?
676デフォルトの名無しさん
垢版 |
2017/06/10(土) 07:48:28.72ID:aOEMIte8
出来たらなんなの。親でも死ぬの?
それがあるからこそプラットフォーム間のギャップを埋めるのを簡単に出来るんだろ。
望み通りのプラットフォーム個別の記述を許さない完全にラップしたものでなんか作ってみ?思ったのと違う挙動するところを制御する手段がなくて気が狂うぞ
677デフォルトの名無しさん
垢版 |
2017/06/10(土) 09:42:28.36ID:tLngA/bq
>>670
問題ないけど、githubは個別ファイルのダウンロードがめんどくさいでしょ。
GoogleDrive(OneDrive使ったことないからわからん)とか公開ファイル置けるところがあるのに。
2017/06/10(土) 09:52:30.92ID:LXmKrpG6
>>677
PDFクリックしたら文書読めるけど
2017/06/10(土) 10:09:12.31ID:WbRq3zow
>>672
そもそも何がプラットフォーム固有処理で何がそうでないか理解できてない時点でネイティブ開発すらまともにしてないだろお前
何がプラットフォーム固有処理か分かっていればよっぽど特殊なアプリでない限り、
大半はFormsの共通部分で済むことが分かる
2017/06/10(土) 11:14:02.50ID:fos5j33Y
githubの有効な使い道もわからない底辺ITドカタ集団にいくら話しても無駄
このスレもアップローダーがわりにgithub使いたいというエンジニアらしからぬ考えの人ばかり
2017/06/10(土) 11:22:02.60ID:2tuXWrnd
へー、すごいねー
貴方はさぞ優秀なエンジニアなんでしょうねー
2ちゃんねるなんかで煽りレスしている程度の底辺レベルの知能レベルの様ですがw
2017/06/10(土) 11:47:43.21ID:+f4R/EjU
姫に直接見抜き許可ほしい
683デフォルトの名無しさん
垢版 |
2017/06/10(土) 12:17:18.42ID:VPPWvZKI
>>672
Xamarin.Forms使ったら2と3の部分が激減するんだけどなw
2017/06/10(土) 12:28:00.38ID:pv/+u9Ym
Xamarin.iOSとかXamarin.Androidの情報とかネイティブの情報流用したらいいだけだからなんぼでも見つかるね
2017/06/10(土) 14:31:40.75ID:wMhNQa/U
姫は最近Xamarinやってなくね?
2017/06/10(土) 16:40:01.12ID:8hZhOGpO
>>653
全部終わらせたけど
表記のあからさまな間違い
手詰まりとなる変化などがあった
(わかってるから普通に進めたけど知らない人は詰まる)

あとはソースがページをまたいでるものがあってコピペしにくい
ページ数を意識しなくていいんだから改修後のソースは改ページしたあとでもよかったのではないか
1章の内容は電話をかけるのとトランスレートの意味が分からないので題材としてはいまいち

でも全体的には面白かった
2017/06/11(日) 20:01:06.67ID:/BG8ZknD
XamarinよりHoloLensのほうが楽しいわ。
2017/06/11(日) 20:17:43.84ID:RB/OHkYp
>>687
比較対象ではないと思いますが
2017/06/11(日) 21:01:56.51ID:KEkeW7T2
Androidの実機へのapkインストールが頻繁に失敗するんですがどうなってますか
2017/06/11(日) 21:21:10.89ID:RB/OHkYp
>>689
おま環
2017/06/12(月) 01:53:57.64ID:MEYLXkSo
C#でAndroidアプリを作れるというのが理解できない
XamarinがC#のコードをJavaに直して吐き出してくれるみたいなイメージでいいんですか?
2017/06/12(月) 01:54:53.51ID:AUXrYQSd
全然違うけどな
693デフォルトの名無しさん
垢版 |
2017/06/12(月) 09:37:07.87ID:sBWCHRoY
うん、全然違う
2017/06/12(月) 15:57:37.01ID:q27/iY9p
だから糞なんだけどな
2017/06/12(月) 18:56:25.30ID:EjkH/ZCK
Xamarin程の糞はない
2017/06/12(月) 19:28:13.98ID:302sbzUP
Xamarin.Formsで全画面表示ってできるんですか?
697デフォルトの名無しさん
垢版 |
2017/06/12(月) 19:33:06.00ID:5L3xq22d
%%%MC+7,8%%%

}

000-"M","LES","TUV=0.13325&/0\7&%&",

001-"23","1","0","2","7.14",[\b%7/1444*%812%2.3%7&6111\end\\]{%3%12%\br
2017/06/13(火) 03:09:09.57ID:EFmCbykq
>>691です
CシャープのコードをILという中間コードに直して、そこからAndroidの中間コードに変換してくれる、で合っていますか?
2017/06/13(火) 04:01:01.00ID:tjsf1/MG
>>698
ILから先は.NET のランタイムがAndroidやiOSのAPIを直接叩いて動作する
2017/06/13(火) 09:28:08.39ID:Rrtg2Skm
>>698
だいたいあってる
C# => C#中間バイナリ => Android Nativeバイナリ とコンパイルする(JIT含む)

実行時には.NETランタイム(Monoランタイム/VM)が
Android NativeバイナリからAndroid API(C言語I/F)を経由してAndroid API(Java)を呼び出す

http://www.mono-project.com/docs/advanced/runtime/
とか
https://developer.xamarin.com/guides/android/advanced_topics/application_package_sizes/
を解読したら読み取れるんじゃないかな

.NETランタイム(Mono)はVMじゃねぇ!!とか言う奴いるけどJITコンパイラを含むVMなんだよなぁ
極力プレコンパイルなりJITなりでネイティブコードに落としてるんだろうけど限界はあるやね
2017/06/13(火) 10:59:02.26ID:tLOkWGaV
色々間違ってる
2017/06/13(火) 11:08:44.63ID:bcmdcu3y
>>698
ttp://www.buildinsider.net/mobile/insidexamarin/07
2017/06/13(火) 11:21:51.46ID:Rrtg2Skm
>>701
こんな風になw
一次リソース出しても読みもしないで思い込みで布教するから困ったちゃん
704デフォルトの名無しさん
垢版 |
2017/06/13(火) 12:16:57.05ID:/5j4YrAT
「Android Nativeバイナリから」が日本語がおかしいんじゃね
2017/06/13(火) 12:28:25.13ID:vISLmsVn
最初の一文からおかしい
2017/06/13(火) 12:38:50.11ID:bcmdcu3y
おかしいとか間違っているとかいうなら、どう間違っているか、正しいのはどうなのかを書かないと無意味。
まあ、中には煽りたいだけの人もいるだろうけどね。
2017/06/13(火) 12:48:12.73ID:LvzI55Ha
>>699>>700>>702

>698
ですがみな様ありがとうございます
取り急ぎの感謝です
じっくり読ませていただきたいと思います
2017/06/13(火) 13:28:21.22ID:Rrtg2Skm
> .NETランタイム(Mono)はVMじゃねぇ
に脊髄反射で気に入らないんだろうけど
> The Mono runtime implements this virtual machine.
と公式に明記されてるっつーの

プレコンパイル(C#中間コードへ)とJIT(Android Nativeへ)でarm, x86バイナリに変換してるって理解してないのかいな
んで、流石に全命令をPFコマンドにマッピングできないからランタイム(VM)が中継しなきゃならんわけだろ

まさかC#から.dexにコンパイルしてるとか、MonoにJITは存在しないとか思っちゃいねーだろうな
2017/06/13(火) 13:41:50.64ID:Rrtg2Skm
煽りなんじゃなく本気でXamarinが貶されてると思って反論してそう、反論になってないけど

俺の知識も結構古いから最新のXamarin.Androidが以下のことしてるならソースをおくれ
1. アプリケーションレイヤーのC#は.dexにコンパイルしてて, Android API(C言語I/F)を操作することはない
2. JITまでの処理を超絶賢いコンパイラでART並みのネイティブターゲットビルドしてる(この場合、Android Java APIはどうやって呼んでるの?)
710デフォルトの名無しさん
垢版 |
2017/06/13(火) 13:43:10.34ID:huEjF5Un
Javaで作ったアプリと
C#で作ったアプリ

実行速度は同じですか?
2017/06/13(火) 13:50:22.18ID:nSPZwJz9
Xamarinのが遅いし実行ファイルの容量もでかい
712デフォルトの名無しさん
垢版 |
2017/06/13(火) 14:59:56.44ID:MpJDhsXT
いやむしろダルビックがクソのせいでXamarinで書いたやつの方が基本速いって話だと思うが。
新しいVM名前忘れたけどそっちだとどうかは知らん。
713デフォルトの名無しさん
垢版 |
2017/06/13(火) 15:04:43.99ID:MpJDhsXT
「.NETランタイム(Monoランタイム/VM)が
Android Nativeバイナリから」
714デフォルトの名無しさん
垢版 |
2017/06/13(火) 15:11:26.66ID:MpJDhsXT
ごめん途中で書いちゃった。
それはJITコンパイルされたものからJavaを呼び出してるって意味?
2017/06/13(火) 15:51:48.59ID:co8+PZUE
>>700
>Android API(C言語I/F)を経由してAndroid API(Java)を呼び出す

APIがAPIを呼び出すってどういうこと?
2017/06/13(火) 16:05:00.87ID:5JfOZPJx
>>709
俺のイメージはこの通り

http://www.buildinsider.net/mobile/insidexamarin/07
2017/06/13(火) 16:40:46.11ID:mEdJ5tDH
一つのアプリを起動するとmonoランタイムとdalvikランタイムの
両方が立ち上がって相互に依存しあっている状態になる
これを一つのフレームワークとみなしてる

monoでJITコンパイルされたnaitiveアプリはmonoのライブラリを参照する
monoから直接叩ける下位のAPIはそのまま実行
dalvik(java)に依存してる部分は仲介システムを介して実行
718デフォルトの名無しさん
垢版 |
2017/06/13(火) 16:53:53.68ID:FSd9JKbI
初めからAndroidネイティブやってりゃこんな混乱なくてめでたしめでたし
2017/06/13(火) 17:21:08.47ID:Rrtg2Skm
>>713-714
疑問は同類だと思うからまとめてレスするけど
Xamarin.Androidで吐かれた実行時のコードってJava(VM)レイヤーじゃなくNative(C/C++)レイヤーで動くわけじゃん?
そのレイヤーからJava APIを呼ぼうと思ったら、JNI経由してJava APIを呼ばざるを得ない
C#コード => .NET Runtime(C/C++) => C/C++ Android API(JNI) => Java Android API

public class MainActivity : Activity
って書いた時のC# Class "MainActivity"とJava Class "Activity"は直接連携してるんじゃなくて下からぐるっと回って連携してる理解

>>716
その記事のソース元だと思われるアーキテクチャ資料はこれかなぁ
https://developer.xamarin.com/guides/android/under_the_hood/architecture/

AndroidアプリケーションAPI(Java)の上に一部重なってXamarin.Android API(C#)がいるけど
MCWもACWもJNIを経由してるよって言ってるからまぁそういうことなんだろうな
720デフォルトの名無しさん
垢版 |
2017/06/13(火) 17:30:06.13ID:X6Xo923W
>>719
いや疑問ていうか君の書いたもの分かりづらいからこういう意味で言ってるんだよね?っていう確認
2017/06/13(火) 17:32:09.88ID:zMNW55yd
>>719
JNIはjavaからネイティブを呼ぶ仕組みだからまったくの逆では?
2017/06/13(火) 17:39:11.30ID:UjkMf+JE
ちょまど今年で契約終了ってマ?
2017/06/13(火) 17:46:53.85ID:zMNW55yd
JNIは双方向なんだな
2017/06/13(火) 17:50:15.19ID:Rrtg2Skm
>>720
IDを転々とさせて煽ってるけどお前は誰だよw

>>721
NativeからJavaを呼ぶモノもJNIって呼ぶよ・・・最近のJava業界は違うのかもしれんけど

さておき、元々の反論(笑)からズレてしまったけど
C#のJITコンパイルしたコード(Managed Code)ってどれくらいネイティブ化してるんだろうね
Mono VMっつってるけど、Dalvik VMほどアホじゃなくART Runtimeくらい賢いといいなぁ
2017/06/13(火) 17:53:24.94ID:9zGloa6i
>>722
KPI()が高いんだから継続だろ
726デフォルトの名無しさん
垢版 |
2017/06/13(火) 18:02:19.12ID:X6Xo923W
>>724
勝手に陰謀論にしてんじゃねーよ
>>713に書いたようにお前の書いたものが何言ってるのか分からないから確認してやってんだろが。
そもそもお前が勝手に他の奴はわかってねえとイキってるだけやん
2017/06/13(火) 18:17:39.40ID:A+O/w9QH
最新のandroidは、実行統計情報に基づいて再コンパイルするART runtimeと新しいJIT runtimeのハイブリッド
2017/06/13(火) 19:27:07.42ID:0l6/Ble6
XamarinのUWPって.NET Nativeではないん?
つまり遅いん?
2017/06/13(火) 19:46:45.68ID:8nmrk1h7
>>728
おまえが馬鹿なのはよくわかった
2017/06/13(火) 19:58:08.27ID:0l6/Ble6
>>729
馬鹿なので詳しく教えて。
2017/06/13(火) 20:09:02.97ID:nSPZwJz9
Xamarin程の糞はない
2017/06/13(火) 21:28:45.67ID:Rrtg2Skm
>>726
で、何が言いたいんだよw
疑問、確認済んで自己満足したら罵倒なのはどうかと
733デフォルトの名無しさん
垢版 |
2017/06/13(火) 21:49:04.30ID:huEjF5Un
Android Studioと共存できる?
2017/06/13(火) 22:05:34.18ID:McnSDEvv
不可能
735デフォルトの名無しさん
垢版 |
2017/06/13(火) 22:12:43.64ID:MpJDhsXT
>>732
いや確認したこととお前が上から目線でイキってるのとは別でしょ。
2017/06/13(火) 22:42:45.99ID:QDQv43N6
>>733
可能
2017/06/14(水) 02:49:14.50ID:YjvfTYog
>>710
実効速度考えるとAndroidStudio一択なんだけどね
開発速度考えたらXamarin一択になる
AndroidStudioの要求スペックやUI全てが糞オブ糞
2017/06/14(水) 02:52:13.54ID:YjvfTYog
有能な開発者がAndroidStudioは見切ってるリアルやストア見ればわかるけどね
Xamarinも全然ベストということはなくてアンチテーゼのレベルにとどまってはいるが
2017/06/14(水) 03:08:02.72ID:8RlawS/K
今VisualStudioもAndroidStudioも両方使ってるけど、IDEの出来ならだんぜんAndroidStudioだわ
必要マシン性能はCorei7 16GBメモリ SSD これだけ揃えれば問題ない

AndroidStudioに慣れた後だと、なにやるにしてもVisualStudioはひと手間多くて嫌になるよ
VisualStudio for Macはさらにひどい出来だな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況