2012-08-23 3 views
8

Android OSのデフォルトカレンダー(ジョージアンカレンダー)を別のカレンダー(自分のカレンダー)に置き換える公式なAPIか、公式でないAPIはありますか?あなたがそれらに精通していない場合は、here世界中のカレンダーのリストを見ることができます。Android OSのデフォルトカレンダーをどのように置き換えることができますか?

DateFormatまたはGregorianCalendarまたはCalendar.getInstance()を上書きする必要がありますか?

(編集に追加されました)そして、Androidのロック画面などで、グレゴリオ暦の使用を完全に上書きしますか?

感謝:)

答えて

0

これはできません。私の元々の懸念事項はロック画面のカレンダーで、今度はAndroid 4.2の別のカレンダータイプの新しいウィジェットを置くことができるように見えるので、この問題の解決策を見つけるために私の興味を失ってしまった(どういうわけか... )!

今私は、この質問に関連しないコースであるGUIで他のカレンダーを使用するためにAOSP自体にパッチを当てる唯一の真の解決策だと思います。

編集:

Xposed frameworkが叶いました私の夢です!理論的には、それはあなたが望むものとAndroidフレームワーク上の任意のメソッドを置き換えることができます。しかし、現在のところ、thissnapshot as 11/28/2013)あたりのAndroid 4.4との互換性はありません。

4

Calendar.getInstance()は、Android APIではありません。これは標準のJava APIです。 Calendar.getInstance()は、デフォルトのタイムゾーンとロケールでcreateCalendar()を呼び出します。タイムゾーン、ロケール、およびその両方を受け入れるファクトリメソッドgetInstance()があります。これは作成されたカレンダーに影響する方法です。

たとえば、日本のロケール原因の作成インスタンスを送信することがわかっている限り、JapaneseImperialCalendarです。 BuddistCalendarと和暦:

EDIT

は、事前に定義されたカレンダーのカップルがあります。そして明らかにデフォルトのGregorianCalendarがあります。 Locale.setExtension(char key, String value)を使用して、独自の「内線番号」を追加できます。私はそれをやったことはありませんが、うまくいくはずです。しかし、正しいパラメータを見つけるためにあなた自身のコードを掘り下げるべきです。がんばろう。

+0

あなたの素早い答えをありがとう:) AndroidのソースCalendar.javaを見ると、JDKのカレンダーのソース(http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/tip/)とは対照的です。 src/share/classes/java/util/Calendar.java)、createCalendar()を見つけることができません。これは、関連する部分のソースです。public static synchronized Calendar getInstance(){return new GregorianCalendar(); } –

+1

@EbrahimByagowi:「このメソッドを(何らかのハッカー的な方法で)オーバーライドすると、Android UIでカレンダーを使用するすべてに影響します」 - oh '$ DEITY' no。セキュリティ上の理由から、SDKアプリケーションからこのような方法で他のアプリケーションに影響を与える権利はありません。あなたは、すべてのアプリケーションに影響を与えたい場合は、Androidをフォークし、オペレーティングシステムを変更し、modded ROMに変換し、それを任意のデバイスにインストールすることを歓迎します。 – CommonsWare

+2

@EbrahimByagowi CommonsWareは100%正確です(いつものように)。必要なのは、デバイス上のどのアプリケーションでもカレンダーを作成するたびに、デフォルトではなくカレンダーを作成するコードを実行し、ウイルスの仕組み。あなたのものは明らかに悪意のあるものではありませんが、フレームワークが提供するものはありません。あなたはあなたの地域で動作するコードを書くことしかできないし、フレームワークを書くこともできる(独自のAndroidバージョンを作る)。たぶん、すべてのカレンダーをカレンダーにしたい理由を詳しく説明すれば、もっと役立つだろうか? – xbakesx

関連する問題