رفتن به مطلب
انجمن توسعه دهندگان موبایل

آموزش پورت برنامه های کوچک سونی برای رامهای cm


ارسال های توصیه شده

small-app-sony-660x330.jpg

 

با سلام

برنامه های کوچک سونی small app در رامهی سونی وجود دارند

با ما باشید با اموزش چگونگی پورت این برنامه ها برای رامهای سیانوژن

ما در نظر میگیریم که شما کامپایل و دیکامپایل را بلدید

مستقیم میریم برای آموزش

 

 

فایل framework-res.apk را دیکامپایل کنید

به مسیر res/values/strings.xml بروید

کدهای زیر را در پایان قرار دهید

 

><string name="permlab_externalTaskSwitcher">Start as an external task switcher</string>
   <string name="permdesc_externalTaskSwitcher">Allows the application to be an external task switcher replacing the native task switcher</string>
   <string name="permlab_smallapp">Small application overlay</string>
   <string name="permdesc_smallapp">Allows running movable small applications on top of other applications.</string>
 

 

فایل AndroidManifest.xml را باز کنید

کد زیر را اضافه کنید

><permission android:name="android.permission.SYSTEM_ALERT_WINDOW" android:label="@string/permlab_systemAlertWindow" android:description="@string/permdesc_systemAlertWindow" android:protectionLevel="dangerous" android:permissionGroup="android.permission-group.SYSTEM_TOOLS" />
 

کد زیر را نیز اضافه کنید

><permission android:name="com.sony.smallapp.permission.SMALLAPP" android:label="@string/permlab_smallapp" android:description="@string/permdesc_smallapp" android:protectionLevel="dangerous" />
 

همانند تصویر زیر میشود

sa1.jpg

تمام فایل framework-res.apk را ریکامپایل کنید

 

 

فایل android.policy.jar را دیکامپایل کنید

فایل com\android\internal\policy\impl\PhoneWindowManager.smal را باز کنید

دو کد زیر را در زیر کد

>.field static final SHOW_PROCESSES_ON_ALT_MENU:Z = false
 

 

قرار دهید

 

>.field static final SHOW_STARTING_ANIMATIONS:Z = true   ----------------------این کد را اگر نداشتید اضافه کنید

.field static final SMALLAPP_LAYER:I = 0x3
 

اکنون کدهای زیر را پیدا کنید

>.method public checkAddPermission(Landroid/view/WindowManager$LayoutParams;)I
   .locals 4
   .parameter "attrs"

   .prologue
   const/4 v2, 0x0

   .line 1588
   iget v1, p1, Landroid/view/WindowManager$LayoutParams;->type:I

   .line 1590
   .local v1, type:I
   const/16 v3, 0x7d0

   if-lt v1, v3, :cond_0

   const/16 v3, 0xbb7

   if-le v1, v3, :cond_1

   .line 1622
   :cond_0
   :goto_0
   return v2

   .line 1594
   :cond_1
   const/4 v0, 0x0

   .line 1595
   .local v0, permission:Ljava/lang/String;
   sparse-switch v1, :sswitch_data_0

   .line 1614
   const-string v0, "android.permission.INTERNAL_SYSTEM_WINDOW"

   .line 1616
   :goto_1
   :sswitch_0
   if-eqz v0, :cond_0

   .line 1617
   iget-object v3, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mContext:Landroid/content/Context;

   invoke-virtual {v3, v0}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I

   move-result v3

   if-eqz v3, :cond_0

   .line 1619
   const/4 v2, -0x8

   goto :goto_0

   .line 1611
   :sswitch_1
   const-string v0, "android.permission.SYSTEM_ALERT_WINDOW"

   .line 1612
   goto :goto_1

   .line 1595
   nop

   :sswitch_data_0
   .sparse-switch
       0x7d2 -> :sswitch_1
       0x7d3 -> :sswitch_1
       0x7d5 -> :sswitch_0
       0x7d6 -> :sswitch_1
       0x7d7 -> :sswitch_1
       0x7da -> :sswitch_1
       0x7db -> :sswitch_0
       0x7dd -> :sswitch_0
       0x7e7 -> :sswitch_0
   .end sparse-switch
.end method
 

و کدهای را با کد زیر جایگزین کنید

>.method public checkAddPermission(Landroid/view/WindowManager$LayoutParams;)I
   .locals 4
   .parameter "attrs"

   .prologue
   const/4 v2, 0x0

   .line 1115
   iget v1, p1, Landroid/view/WindowManager$LayoutParams;->type:I

   .line 1117
   .local v1, type:I
   const/16 v3, 0x7d0

   if-lt v1, v3, :cond_0

   const/16 v3, 0xbb7

   if-le v1, v3, :cond_1

   .line 1152
   :cond_0
   :goto_0
   return v2

   .line 1121
   :cond_1
   const/4 v0, 0x0

   .line 1122
   .local v0, permission:Ljava/lang/String;
   sparse-switch v1, :sswitch_data_0

   .line 1144
   const-string v0, "android.permission.INTERNAL_SYSTEM_WINDOW"

   .line 1146
   :goto_1
   :sswitch_0
   if-eqz v0, :cond_0

   .line 1147
   iget-object v3, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mContext:Landroid/content/Context;

   invoke-virtual {v3, v0}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I

   move-result v3

   if-eqz v3, :cond_0

   .line 1149
   const/4 v2, -0x8

   goto :goto_0

   .line 1137
   :sswitch_1
   const-string v0, "android.permission.SYSTEM_ALERT_WINDOW"

   .line 1138
   goto :goto_1

   .line 1141
   :sswitch_2
   const-string v0, "com.sony.smallapp.permission.SMALLAPP"

   .line 1142
   goto :goto_1

   .line 1122
   :sswitch_data_0
   .sparse-switch
       0x7d2 -> :sswitch_1
       0x7d3 -> :sswitch_1
       0x7d5 -> :sswitch_0
       0x7d6 -> :sswitch_1
       0x7d7 -> :sswitch_1
       0x7da -> :sswitch_1
       0x7db -> :sswitch_0
       0x7dd -> :sswitch_0
       0xbb5 -> :sswitch_2
       0xbb6 -> :sswitch_2
   .end sparse-switch
.end method
 

فایل android.policy.jar را ریکامپایل کنید

 

 

فایل framework.jar را ریکامپایل کنید

فایل زیری که براتون میزارم را کامل در مسیر classout/com کپی کنید

مقداری برنامه هم نیاز دارید در مسیر system/etc و system/framework کپی کنید

آنها را در فایل زیر نیز براتون میزارم

 

 

 

یک لانچر اکسپریا نصب کنید و از برنامه های کوچک سونی استفاده کنید

 

لینک پرتال برای دانلود فایلها

لینک ارسال

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

×
×
  • اضافه کردن...