رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

کدهای به درد بخور ولی عجیب خخخ D :


پست های پیشنهاد شده

[align=center]تمامی کد های مفید اینجا قرار خواهد گرفت[/align]


کد ارسال برنامه از طریق بلوتوث

[shcode=java]

try {

PackageManager pm = getPackageManager();

ApplicationInfo ai = pm.getApplicationInfo(getPackageName(), 0);

File srcFile = new File(ai.publicSourceDir);

Intent share = new Intent();

share.setAction(Intent.ACTION_SEND);

[share.setType("application/vnd.android.package-archive");

share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(srcFile));

startActivity(Intent.createChooser(share, "MyApp"));

} catch (Exception e) {

Log.e("ShareApp", e.getMessage());

}

[/shcode]

متد چک کردن وضعیت متصل بودن اینترنت

[shcode=java]

public static boolean isConnectingToInternet(Context context) {

ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERV ICE);

if (connectivity != null) {

NetworkInfo[] info = connectivity.getAllNetworkInfo();

if (info != null)

for (int i = 0; i < info.length; i++)

if (info.getState() == NetworkInfo.State.CONNECTED)

return true;

}

return false;

}

[/shcode]

دسترسی مورد نیاز

1

کد بکاپ گرفتن از SharedPreferences

[shcode=java]

private boolean saveSharedPreferencesToFile(File dst) {

boolean res = false;

ObjectOutputStream output = null;

try {

output = new ObjectOutputStream(new FileOutputStream(dst));

SharedPreferences pref =

getSharedPreferences(prefName, MODE_PRIVATE);

output.writeObject(pref.getAll());

res = true;

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}finally {

try {

if (output != null) {

output.flush();

output.close();

}

} catch (IOException ex) {

ex.printStackTrace();

}

}

return res;

}

@SuppressWarnings({ "unchecked" })

private boolean loadSharedPreferencesFromFile(File src) {

boolean res = false;

ObjectInputStream input = null;

try {

input = new ObjectInputStream(new FileInputStream(src));

Editor prefEdit = getSharedPreferences(prefName, MODE_PRIVATE).edit();

prefEdit.clear();

Map input.readObject();

for (Entry

Object v = entry.getValue();

String key = entry.getKey();

if (v instanceof Boolean)

prefEdit.putBoolean(key, ((Boolean) v).booleanValue());

else if (v instanceof Float)

prefEdit.putFloat(key, ((Float) v).floatValue());

else if (v instanceof Integer)

prefEdit.putInt(key, ((Integer) v).intValue());

else if (v instanceof Long)

prefEdit.putLong(key, ((Long) v).longValue());

else if (v instanceof String)

prefEdit.putString(key, ((String) v));

}

prefEdit.commit();

res = true;

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} catch (ClassNotFoundException e) {

e.printStackTrace();

}finally {

try {

if (input != null) {

input.close();

}

} catch (IOException ex) {

ex.printStackTrace();

}

}

return res;

}

[/shcode]

کد تغییر سایز bitmap

[shcode=java]

private int calculateInSampleSize(BitmapFactory.Options options) {

// Raw height and width of image

final int height = options.outHeight;

final int width = options.outWidth;

int thumbnailY=100; //desire size

int thumbnailX=100; //desire size

int inSampleSize = 1;

if (height > thumbnailY || width > thumbnailX) {

inSampleSize = (int) Math.pow(

2,

(int) (Math.log(Math.min((float) thumbnailY

/ (float) height, (float) thumbnailX

/ (float) width)) / Math.log(0.5)));

Log.i("in scale", "s is " + inSampleSize);

}

return inSampleSize;

}[/JAVA]

استفاده هم به این شکل:

[JAVA] BitmapFactory.Options opt = new BitmapFactory.Options();

opt.inJustDecodeBounds = true;

BitmapFactory.decodeFile(path, opt);

opt.inSampleSize = calculateInSampleSize(opt);

opt.inJustDecodeBounds = false;

opt.inPreferredConfig = Bitmap.Config.RGB_565;

return BitmapFactory.decodeFile(path, opt)

[/shcode]

تشخیص عمودی یا افقی بودن صفحه نمایش:

[shcode=java]

@Override

public void onConfigurationChanged(Configuration newConfig) {

super.onConfigurationChanged(newConfig);

[/shcode]

// تشخیص عمودی یا افقی بودن صفحه نمایش

[shcode=java]

if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {

Toast.makeText(this, "افقی", Toast.LENGTH_SHORT).show();

} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){

Toast.makeText(this, "عمودی", Toast.LENGTH_SHORT).show();

}

}

[/shcode]

ارسال متن و شماره تلفن به messaging

[shcode=java]

[align=left]Intent smsIntent = new Intent(Intent.ACTION_VIEW);

smsIntent.putExtra("sms_body", message);

smsIntent.putExtra("address", number);

smsIntent.setType("vnd.android-dir/mms-sms");

startActivity(smsIntent);

[/shcode]

چک کردن mount بودن حافظه خارجی

[shcode=java]

public static boolean checkSD(){

if (!Environment.getExternalStorageState().equals(

Environment.MEDIA_MOUNTED))

return false;

return true;

}

[/shcode]

این هم کده خروج از برنامه با دوبار لمس دکمه back و نمایش پیام در اولین لمس

[shcode=java]

private static long back_pressed = 0L;

@Override

public void onBackPressed()

{

if (back_pressed + 2000 > System.currentTimeMillis()) super.onBackPressed();

else Toast.makeText(getBaseContext(), "Press once again to exit!", Toast.LENGTH_SHORT).show();

back_pressed = System.currentTimeMillis();

}

[/shcode]

لینک ارسال
به اشتراک گذاری در سایت های دیگر

[align=center]

کدی برای اینکه کاربر رو مستقیم به قسمت نظرات یه برنامه در بازار هدایت میکنه :
Intent browserIntent = new Intent(Intent.ACTION_EDIT, Uri.parse("http://cafebazaar.ir/app/?id=نام پکیج برنامه"));                        startActivity(browserIntent);

[/align]


[align=center]درسته این کد همگانی شده همه بدلن ولی میزارم واسه آرشیو شدن

کار با دگمه های فیزیکی افزایش/کاهش صدا[/align]

[align=center]

@Override

public boolean dispatchKeyEvent(KeyEvent event) {

int keyCode = event.getKeyCode();

if(keyCode == KeyEvent.KEYCODE_VOLUME_UP){

if (event.getAction() == KeyEvent.ACTION_UP){

// Dohme Afzayeshe Seda

}

return true;

}else if(keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){

if (event.getAction() == KeyEvent.ACTION_UP){

//Dogme Kaheshe Sheda

}

return true;

}

return super.dispatchKeyEvent(event);

}[/align]


[align=center]اینم تشخیص جهت لمس

public class activity extends Activity implements SimpleGestureListener {

private logskey detector;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

}

@Override

public boolean dispatchTouchEvent(MotionEvent me) {

// Call onTouchEvent of SimpleGestureFilter class

this.detector.onTouchEvent(me);

return super.dispatchTouchEvent(me);

}

@Override

public void onSwipe(int direction) {

switch (direction) {

case logskey.SWIPE_RIGHT:

// Harakat be samte rast

break;

case logskey.SWIPE_LEFT:

// Harakat be samte chap

break;

case logskey.SWIPE_DOWN:

// Harakat be samte pain

break;

case logskey.SWIPE_UP:

// Harakat be samte bala

break;

}

}

@Override

public void onDoubleTap() {

// Duble Click

}

}

[/align]


[align=center]این هم کد فهمیدن اینکه دستگاه تبلت هستش یا ...[/align]

[align=center]

public static boolean isTablet(Context context) {

return (context.getResources().getConfiguration().screenLayout

& Configuration.SCREENLAYOUT_SIZE_MASK)

>= Configuration.SCREENLAYOUT_SIZE_LARGE;

}

[/align]


[align=center]این هم کد ارسال شماره تلفن به شمار گیر Dialer[/align]

[align=center]

public void dial(String num){

Intent callIntent = new Intent(Intent.ACTION_DIAL);

callIntent.setData(Uri.parse("tel:" + Uri.encode(num.trim().toString())));

callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

startActivity(callIntent);

}

استفاده از کد :

dial("09215799615");

[/align]


[align=center]این هم کد قرار دادن آهنگ مورد نظر به عنوان رینگتون[/align]

[align=center]

File k = new File(path, "mysong.mp3"); // path is a file to /sdcard/media/ringtone

ContentValues values = new ContentValues();

values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());

values.put(MediaStore.MediaColumns.TITLE, "My Song title");

values.put(MediaStore.MediaColumns.SIZE, 215454);

values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");

values.put(MediaStore.Audio.Media.ARTIST, "Madonna");

values.put(MediaStore.Audio.Media.DURATION, 230);

values.put(MediaStore.Audio.Media.IS_RINGTONE, true);

values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);

values.put(MediaStore.Audio.Media.IS_ALARM, false);

values.put(MediaStore.Audio.Media.IS_MUSIC, false);

//Insert it into the database

Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());

Uri newUri = main.getContentResolver().insert(uri, values);

RingtoneManager.setActualDefaultRingtoneUri(

myActivity,

RingtoneManager.TYPE_RINGTONE,

newUri

);

لطفا تست کنید[/align]


[align=center]اگه بخوای از یه پوشه مثلا از raw فراخوانی کنی میتونی این کد رو در یه دکمه قرار بدی و براحتی موزیک مورد نظرت رو بعنوان زنگ موبایل قرار بدی :[/align]

[align=center]

byte[] buffer = null;            InputStream fIn = getBaseContext().getResources().openRawResource(                    R.raw.zang1);            int size = 0;            try {                size = fIn.available();                buffer = new byte[size];                fIn.read(buffer);                fIn.close();            } catch (IOException e) {                return false;            }            String path = Environment.getExternalStorageDirectory().getPath()                    + "/media/audio/ringtones/";            String filename = "zang1.mp3";            boolean exists = (new File(path)).exists();            if (!exists) {                new File(path).mkdirs();            }            FileOutputStream save;            try {                save = new FileOutputStream(path + filename);                save.write(buffer);                save.flush();                save.close();            } catch (FileNotFoundException e) {                return false;            } catch (IOException e) {                return false;            }            sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,                    Uri.parse("file://" + path + filename)));            File k = new File(path, filename);            ContentValues values = new ContentValues();            values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());            values.put(MediaStore.MediaColumns.TITLE, filename);            values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");            // This method allows to change Notification and Alarm tone also. Just            // pass corresponding type as parameter            if (RingtoneManager.TYPE_RINGTONE == type) {                values.put(MediaStore.Audio.Media.IS_RINGTONE, true);            } else if (RingtoneManager.TYPE_NOTIFICATION == type) {                values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);            } else if (RingtoneManager.TYPE_ALARM == type) {                values.put(MediaStore.Audio.Media.IS_ALARM, true);            }            Uri uri = MediaStore.Audio.Media.getContentUriForPath(k                    .getAbsolutePath());            Uri newUri = Zang.this.getContentResolver().insert(uri, values);            RingtoneManager.setActualDefaultRingtoneUri(Zang.this, type,                    newUri);            // Insert it into the database            this.getContentResolver()                    .insert(MediaStore.Audio.Media.getContentUriForPath(k                            .getAbsolutePath()), values);            return true;

[/align]


[align=center]این هم کد باز شدن تنظیمات wireless

startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));

این هم کد باز شدن انتخاب شبکه wireless برای اتصال به اون

startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK));

:D:D[/align]


[align=center]امیدوارم استفاده کنید[/align]

[align=center]این کدها هر روز آپدیت میشن و کدهای جدیدتری بهشون اضافه میشه[/align]

[align=center]ناموسن این همه کد میذارم ارزش یه اعتبار دادنو ندارم؟؟؟؟؟؟؟ :( [/align]

[align=center]مرسی بروبچ [/align]

[align=center]P30DROID[/align]

لینک ارسال
به اشتراک گذاری در سایت های دیگر

[align=center]کدی برای حذف برنامه

Uri packageURI = Uri.parse("package:com.android.myapp");

Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);

startActivity(uninstallIntent);

مانیفیست

[/align]


[align=center]کدی برای نصب برنامه

fileName = Environment.getExternalStorageDirectory() + "/myApp.apk";Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");

startActivity(intent);

مانیفیست

[/align]


[align=center]خروج از برنامه : فقط AppExit() را در listener هر دکمه ای که میخواهید قرار دهید

[/align]

[align=center]

public void AppExit() {

this.finish();

Intent intent = new Intent(Intent.ACTION_MAIN);

intent.addCategory(Intent.CATEGORY_HOME);

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

startActivity(intent);

}[/align]

[align=center]:D:D:D[/align]


[align=center]تشخیص روت بودن گوشی:

   public static boolean isRooted() {

        try {

            Process process = Runtime.getRuntime().exec("su");

            DataOutputStream os = new DataOutputStream(

                    process.getOutputStream());

            os.writeBytes("exit\n");

            os.flush();

            process.waitFor();

            int i = process.exitValue();

            if (i == 0)

                return true;

            else

                return false;

        } catch (Exception e) {

        }

        return false;

    }

[/align]


[align=center]این هم کد تبدیل string به int با الگوریتمی متفاوت از Integer.parseInt .

:dodgy::blush:

 public static int strToint(String e) throws NumberFormatException {

if (e == null || e.length() < 1 || e.equals("")) //string moshkel dare

throw new NumberFormatException("String : " + e + " is corrupt !");

char[] ch = e.toCharArray();

boolean negative = false; //manfi

int len = ch.length; // toole adad

int[] i = new int[len]; //araye adad

short j, k; // adad halghe ha

int result = 0; //javab

if (ch[0] == '-') { //manfi

if (e.length() == 1)

throw new NumberFormatException("String : " + e + " is corrupt !");

negative = true; // manfi mishe

ch = e.substring(1).toCharArray();

len = ch.length;

} else if (ch[0] == '+') { //mosbat

if (e.length() == 1)

throw new NumberFormatException("String : " + e + " is corrupt !");

ch = e.substring(1).toCharArray();

len = ch.length;

}

for (j = 0; j < len; j++) {

if (ch[j] < '0' || ch[j] > '9') // bayad beine 0 ta 9 bashe

throw new NumberFormatException("String : " + e + " Not a Number !");

i[j] = ch[j] - 48; // az char ke adad bashe 48 ta kam koni mishe int

for (k = 0; k < len - (j + 1); k++)

i[j] *= 10; //sefr ha ra mizaram ba zarb dar 10

result += i[j]; // hala jam mikonam

if (result < 0) //aslan nabayad manfi bashe

{

if (result == -2147483648 && negative) {//No problem (-|0)

// irad az man nist . system manfi bar migardoone . baray hamin in shart lazeme

} else //adad bozorg tar az int

{

throw new NumberFormatException("Number : " + e + " is out of range for int! ");

}

}

}

return negative ? -result : result; // manfi bashe ya mosbat

}

[/align]

لینک ارسال
به اشتراک گذاری در سایت های دیگر

کد پیدا کردن اندازه استاتوس بار ( نوتیفیکیشن بار )

همونطور که میدونین یا شاید هم دقت نکردین، استاتوس بار توی اندازه صفحه های مختلف، اندازه های مختلف داره

مثلا توی اندازه 320*240 اندازه استاتوس بار 20px هست و توی 320*480 برابر 25px و توی 480*720 برابر 38px و ...

با کد زیر به راحتی اندازه رو به دست بیارید ( مورد استفاده در طراحی طبق اندازه )

[shcode=java][/shcode]public int getStatusBarHeight() { int result = 0;

int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");

if (resourceId > 0) {

result = getResources().getDimensionPixelSize(resourceId);

}

return result;

}

[shcode=java][/shcode]

لینک ارسال
به اشتراک گذاری در سایت های دیگر
  • 7 ماه بعد...

ممنون از شما برای کدهای مفیدتون ...

آقا میشه کد Mount & Unmount کردن USB Mass storgae هم بزاری ؟

اساتید کسی نیست جواب بنده رو بده ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

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